Class Hierarchy<T>
Represents a way to expose a node of a hierarchical structure, including the node object of type T
.
Inherited Members
Namespace: Cuemon
Assembly: Cuemon.Core.dll
Syntax
public sealed class Hierarchy<T> : Wrapper<T>, IHierarchy<T>, IWrapper<T>, IData
Type Parameters
Name | Description |
---|---|
T | The type of the object represented in the hierarchical structure. |
Constructors
| Improve this DocHierarchy()
Initializes a new instance of the Hierarchy<T> class.
Declaration
public Hierarchy()
Properties
| Improve this DocDepth
Gets the current depth of the node in the hierarchical structure.
Declaration
public int Depth { get; }
Property Value
Type | Description |
---|---|
System.Int32 | The current depth of the in the hierarchical structure. |
HasChildren
Gets a value indicating whether this instance has any children.
Declaration
public bool HasChildren { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
HasParent
Gets a value indicating whether this instance has a parent.
Declaration
public bool HasParent { get; }
Property Value
Type | Description |
---|---|
System.Boolean |
|
Index
Gets the zero-based index of the current node that this hierarchical structure represents.
Declaration
public int Index { get; }
Property Value
Type | Description |
---|---|
System.Int32 | The zero-based index of the current node that this hierarchical structure represents. |
Item[Int32]
Gets the node at the specified index.
Declaration
public IHierarchy<T> this[int index] { get; }
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | index |
Property Value
Type | Description |
---|---|
IHierarchy<T> | The node at the specified index. |
Methods
| Improve this DocAdd(T)
Adds the specified instance to a node in the hierarchical structure representation.
Declaration
public IHierarchy<T> Add(T instance)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The instance to a node in the hierarchical structure represents. |
Returns
Type | Description |
---|---|
IHierarchy<T> | A reference to the newly added hierarchical node. |
Add(T, MemberInfo)
Adds the specified instance to a node in the hierarchical structure representation.
Declaration
public IHierarchy<T> Add(T instance, MemberInfo member)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The instance to a node in the hierarchical structure represents. |
System.Reflection.MemberInfo | member | The member from where |
Returns
Type | Description |
---|---|
IHierarchy<T> | A reference to the newly added hierarchical node. |
Add(T, Type)
Adds the specified instance to a node in the hierarchical structure representation.
Declaration
public IHierarchy<T> Add(T instance, Type instanceType)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The instance to a node in the hierarchical structure represents. |
System.Type | instanceType | The type of |
Returns
Type | Description |
---|---|
IHierarchy<T> | A reference to the newly added hierarchical node. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
Add(T, Type, MemberInfo)
Adds the specified instance to a node in the hierarchical structure representation.
Declaration
public IHierarchy<T> Add(T instance, Type instanceType, MemberInfo member)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The instance to a node in the hierarchical structure represents. |
System.Type | instanceType | The type of |
System.Reflection.MemberInfo | member | The member from where |
Returns
Type | Description |
---|---|
IHierarchy<T> | A reference to the newly added hierarchical node. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
GetChildren()
Gets an System.Collections.Generic.IEnumerable<T> sequence that represents all the child nodes of the current hierarchical node.
Declaration
public IEnumerable<IHierarchy<T>> GetChildren()
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<IHierarchy<T>> | An System.Collections.Generic.IEnumerable<T> sequence that represents all the child nodes of the current hierarchical node. |
GetParent()
Gets the parent node of the current node in the hierarchical structure.
Declaration
public IHierarchy<T> GetParent()
Returns
Type | Description |
---|---|
IHierarchy<T> | The parent node of the current node in the hierarchical structure. |
GetPath()
Gets the hierarchical path of the node in the hierarchical structure.
Declaration
public string GetPath()
Returns
Type | Description |
---|---|
System.String | A System.String that identifies the hierarchical path relative to the current node. |
GetPath(Func<IHierarchy<T>, String>)
Gets the hierarchical path of the node in the hierarchical structure.
Declaration
public string GetPath(Func<IHierarchy<T>, string> pathResolver)
Parameters
Type | Name | Description |
---|---|---|
System.Func<IHierarchy<T>, System.String> | pathResolver | The function delegate path resolver. |
Returns
Type | Description |
---|---|
System.String | A System.String that identifies the hierarchical path relative to the current node. |
Replace(T)
Allows for the instance on the current node to be replaced with a new instance
.
Declaration
public void Replace(T instance)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The new instance to replace the original with. |
Replace(T, Type)
Allows for the instance on the current node to be replaced with a new instance
.
Declaration
public void Replace(T instance, Type instanceType)
Parameters
Type | Name | Description |
---|---|---|
T | instance | The new instance to replace the original with. |
System.Type | instanceType | The type of the new instance. |