Class ModelElementBase<TModelContract>
Base abstract class for model elements.
Inheritance
System.Object
System.Dynamic.DynamicObject
NamedElementBase<TModelContract>
ModelElementBase<TModelContract>
Implements
System.Dynamic.IDynamicMetaObjectProvider
Inherited Members
System.Dynamic.DynamicObject.GetMetaObject(System.Linq.Expressions.Expression)
System.Dynamic.DynamicObject.TryBinaryOperation(System.Dynamic.BinaryOperationBinder, System.Object, System.Object)
System.Dynamic.DynamicObject.TryConvert(System.Dynamic.ConvertBinder, System.Object)
System.Dynamic.DynamicObject.TryCreateInstance(System.Dynamic.CreateInstanceBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryDeleteIndex(System.Dynamic.DeleteIndexBinder, System.Object[])
System.Dynamic.DynamicObject.TryDeleteMember(System.Dynamic.DeleteMemberBinder)
System.Dynamic.DynamicObject.TryGetIndex(System.Dynamic.GetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryInvoke(System.Dynamic.InvokeBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TrySetIndex(System.Dynamic.SetIndexBinder, System.Object[], System.Object)
System.Dynamic.DynamicObject.TryUnaryOperation(System.Dynamic.UnaryOperationBinder, System.Object)
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: Kephas.Model.Elements
Assembly: Kephas.Model.dll
Syntax
public abstract class ModelElementBase<TModelContract> : NamedElementBase<TModelContract>, IConstructibleElement, IModelElement, INamedElement, IAggregatedElementInfo, IElementInfo, IExpando, IDynamicMetaObjectProvider, IIndexable, IAttributeProvider where TModelContract : IModelElement
Type Parameters
Name | Description |
---|---|
TModelContract | The type of the model contract (the model interface). |
Constructors
| Improve this Doc View SourceModelElementBase(IModelConstructionContext, String)
Initializes a new instance of the ModelElementBase<TModelContract> class.
Declaration
protected ModelElementBase(IModelConstructionContext constructionContext, string name)
Parameters
Type | Name | Description |
---|---|---|
IModelConstructionContext | constructionContext | Context for the construction. |
System.String | name | The name. |
Properties
| Improve this Doc View SourceAnnotations
Gets the element annotations.
Declaration
public override IEnumerable<IAnnotation> Annotations { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<IAnnotation> | The element annotations. |
Overrides
Kephas.Model.Elements.NamedElementBase<TModelContract>.Annotations
|
Improve this Doc
View Source
Members
Gets the members of this model element.
Declaration
public virtual IEnumerable<INamedElement> Members { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<INamedElement> | The model element members. |
Methods
| Improve this Doc View SourceAddMember(INamedElement)
Adds the member to the members list.
Declaration
protected override void AddMember(INamedElement member)
Parameters
Type | Name | Description |
---|---|---|
INamedElement | member | The member. |
Overrides
Kephas.Model.Elements.NamedElementBase<TModelContract>.AddMember(Kephas.Model.INamedElement)
|
Improve this Doc
View Source
GetMember(String, Boolean)
Gets the member with the specified qualified name.
Declaration
public virtual INamedElement GetMember(string qualifiedName, bool throwOnNotFound = true)
Parameters
Type | Name | Description |
---|---|---|
System.String | qualifiedName | The qualified name of the member. |
System.Boolean | throwOnNotFound | If set to |
Returns
Type | Description |
---|---|
INamedElement | The member with the provided qualified name or |
OnCompleteConstruction(IModelConstructionContext)
Called when the construction is complete.
Declaration
protected override void OnCompleteConstruction(IModelConstructionContext constructionContext)
Parameters
Type | Name | Description |
---|---|---|
IModelConstructionContext | constructionContext | Context for the construction. |
Overrides
Kephas.Model.Elements.NamedElementBase<TModelContract>.OnCompleteConstruction(Kephas.Model.Construction.IModelConstructionContext)
Implements
System.Dynamic.IDynamicMetaObjectProvider