Share via


ModelElementExtensionMethods Class

Definition

Extension methods for DSL Extensibility related operations on ModelElements. Import the namespace Microsoft.VisualStudio.Modeling.Extensibility to make these operations available as if methods of ModelElement. Otherwise the same operations are available as static methods on ModelElement.

public ref class ModelElementExtensionMethods abstract sealed
public static class ModelElementExtensionMethods
type ModelElementExtensionMethods = class
Public Module ModelElementExtensionMethods
Inheritance
ModelElementExtensionMethods

Methods

AddExtension(ModelElement, DomainClassInfo)

Extend this ModelElement with a newly instantiated extension of the specified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension(ModelElement, ExtensionElement)

Extend this ModelElement with a specific extension. An InvalidOperationException will be thrown if the element already has an extension of the same type.

AddExtension(ModelElement, Guid)

Extend this ModelElement with newly instantiated extension of the identified domain type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension(ModelElement, Type)

Extend this ModelElement with a newly instantiated extension of the specified type. An InvalidOperationException will be thrown if the element already has an extension of that type.

AddExtension<T>(ModelElement)

Extend this ModelElement with a newly instantiated extension of a particular type. An InvalidOperationException will be thrown if the element already has an extension of the same type.

GetAllExtensions(ModelElement)

Return an enumerable that performs a breadth first traversal across the tree of extension elements embedded in this ModelElement.

GetBaseElement(ModelElement)

Returns the root of the virtual MEL in which the specified ModelElement is participating.

GetExtension(ModelElement, DomainClassInfo)
GetExtension(ModelElement, Guid)
GetExtension(ModelElement, Type)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised.

GetExtension<T>(ModelElement)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If the element has no such extension then an InvalidOperationException will be raised.

IsExtendedBy(ModelElement, DomainClassInfo)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

IsExtendedBy(ModelElement, Guid)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

IsExtendedBy(ModelElement, Type)

Query whether this ModelElement is currently extended by an ExtensionElement of a particular type.

RemoveExtension(ModelElement, DomainClassInfo)

Remove any extension of the specified ModelElement that is of a particular type.

RemoveExtension(ModelElement, ExtensionElement)

Remove a specified ExtensionElement from the extensions of this ModelElement.

RemoveExtension(ModelElement, Guid)

Remove any extension of the specified ModelElement that is of a particular type.

RemoveExtension(ModelElement, Type)

Remove any extension of this ModelElement that is of a particular type.

TryGetExtension(ModelElement, DomainClassInfo)
TryGetExtension(ModelElement, Guid)
TryGetExtension(ModelElement, Type)
TryGetExtension<T>(ModelElement)

Get the ExtensionElement of the specified type from the available extensions of this ModelElement. If this element has no such extension then the result will be null.

Applies to