IAggregatable Interface |
Defines members (principally Parent and VisitChildren(ChildVisitor, ChildVisitorOptions, Object)) that allow to consume parent-child relationships in an object tree.
Namespace: PostSharp.Patterns.Model
Assembly: PostSharp.Patterns.Aggregation (in PostSharp.Patterns.Aggregation.dll) Version: 6.4.11.0 (6.4.11.0)

C#
public interface IAggregatable
The IAggregatable type exposes the following members.

Name | Description | |
---|---|---|
![]() | Parent |
Gets the parent of the current object.
|
![]() | ParentRelationship |
Describes the relationship between the current object and its parent. Valid values are Child or ParentSurrogate.
|

Name | Description | |
---|---|---|
![]() | VisitChildren |
Executes an action for all direct children of the current object.
|

Name | Description | |
---|---|---|
![]() | AncestorChanged |
Occurs when any ancestor changes. An ancestor is the parent of the current object or the parent of an ancestor of the current object.
|
![]() | ParentChanged |
Occurs when the Parent property changes.
|

Name | Description | |
---|---|---|
![]() | GetChildren |
Gets the list of children of a specified parent object.
(Defined by AggregatableExtensions.) |
![]() | GetDistinctChildren |
Gets a list of distinct children of a specified parent object.
(Defined by AggregatableExtensions.) |
![]() | IsDescendantOf |
Determines whether a specified object is a descendant of a specified ancestor.
(Defined by AggregatableExtensions.) |
![]() | VisitSelfAndDescendants |
Executes a ChildVisitor for the a specified parent object and all its descendants.
(Defined by AggregatableExtensions.) |

If a class implements this interface, it must also implement IAttachable. These two interfaces have been separated for clarity, since IAttachable should normally not be consumed from user code.
