Class IdentifiableExtensions
- Namespace
- MonkeyLoader
- Assembly
- MonkeyLoader.dll
Contains extension methods dealing with IIdentifiables.
public static class IdentifiableExtensions
- Inheritance
-
IdentifiableExtensions
- Inherited Members
Methods
FindNearestParent<TParentIdentifiable>(IIdentifiable)
Finds the nearest TParentIdentifiable parent of this identifiable.
public static TParentIdentifiable FindNearestParent<TParentIdentifiable>(this IIdentifiable identifiable) where TParentIdentifiable : IIdentifiable
Parameters
identifiableIIdentifiableThe IIdentifiable to start looking from.
Returns
- TParentIdentifiable
The found parent.
Type Parameters
TParentIdentifiableThe type of the parent IIdentifiable to look for.
Exceptions
- InvalidOperationException
When no suitable parent was found.
FindNearestParent<TParentIdentifiable>(IIdentifiable, Predicate<TParentIdentifiable>)
Finds the nearest TParentIdentifiable parent of this identifiable
that satisfies the given predicate.
public static TParentIdentifiable FindNearestParent<TParentIdentifiable>(this IIdentifiable identifiable, Predicate<TParentIdentifiable> predicate) where TParentIdentifiable : IIdentifiable
Parameters
identifiableIIdentifiableThe IIdentifiable to start looking from.
predicatePredicate<TParentIdentifiable>The predicate that a potential parent must satisfy.
Returns
- TParentIdentifiable
The parent satisfying the
predicate.
Type Parameters
TParentIdentifiableThe type of the parent IIdentifiable to look for.
Exceptions
- InvalidOperationException
When no suitable parent was found.
GetAll<TIdentifiable>(IIdentifiableCollection<TIdentifiable>)
Gets an enumerable of all child TIdentifiable from this object.
public static IEnumerable<TIdentifiable> GetAll<TIdentifiable>(this IIdentifiableCollection<TIdentifiable> identifiableCollection) where TIdentifiable : IIdentifiable
Parameters
identifiableCollectionIIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IEnumerable<TIdentifiable>
An enumerable of all child
TIdentifiable.
Type Parameters
TIdentifiableThe type of the nested IIdentifiables to enumerate.
GetAll<TIdentifiable>(INestedIdentifiableCollection<TIdentifiable>)
Gets an enumerable of all child TIdentifiable from this object.
public static IEnumerable<TIdentifiable> GetAll<TIdentifiable>(this INestedIdentifiableCollection<TIdentifiable> nestedIdentifiableCollection) where TIdentifiable : INestedIdentifiable
Parameters
nestedIdentifiableCollectionINestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- IEnumerable<TIdentifiable>
An enumerable of all child
TIdentifiable.
Type Parameters
TIdentifiableThe type of the nested IIdentifiables to enumerate.
Get<TIdentifiable>(IIdentifiableCollection<TIdentifiable>)
Starts a search for a child TIdentifiable from this object.
public static IIdentifiableSearch<TIdentifiable> Get<TIdentifiable>(this IIdentifiableCollection<TIdentifiable> identifiableCollection) where TIdentifiable : IIdentifiable
Parameters
identifiableCollectionIIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IIdentifiableSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
Get<TIdentifiable>(IIdentifiableOwner<TIdentifiable>)
Starts a search for a child TIdentifiable from this object.
public static IIdentifiableOwnerSearch<TIdentifiable> Get<TIdentifiable>(this IIdentifiableOwner<TIdentifiable> identifiableOwner) where TIdentifiable : INestedIdentifiable
Parameters
identifiableOwnerIIdentifiableOwner<TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
Get<TIdentifiable>(INestedIdentifiableCollection<TIdentifiable>)
Starts a search for a child TIdentifiable from this object.
public static INestedIdentifiableSearch<TIdentifiable> Get<TIdentifiable>(this INestedIdentifiableCollection<TIdentifiable> nestedIdentifiableCollection) where TIdentifiable : INestedIdentifiable
Parameters
nestedIdentifiableCollectionINestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- INestedIdentifiableSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
Get<TIdentifiable>(INestedIdentifiableOwner<TIdentifiable>)
Starts a search for a child TIdentifiable from this object.
public static INestedIdentifiableOwnerSearch<TIdentifiable> Get<TIdentifiable>(this INestedIdentifiableOwner<TIdentifiable> nestedIdentifiableOwner) where TIdentifiable : INestedIdentifiable
Parameters
nestedIdentifiableOwnerINestedIdentifiableOwner<TIdentifiable>The nested identifiable owner to start from.
Returns
- INestedIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
Get<TOwner, TIdentifiable>(IIdentifiableOwner<TOwner, TIdentifiable>)
Starts a search for a child TIdentifiable from this object.
public static IIdentifiableOwnerSearch<TIdentifiable> Get<TOwner, TIdentifiable>(this IIdentifiableOwner<TOwner, TIdentifiable> identifiableOwner) where TOwner : IIdentifiableOwner<TOwner, TIdentifiable> where TIdentifiable : INestedIdentifiable<TOwner>
Parameters
identifiableOwnerIIdentifiableOwner<TOwner, TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TOwnerThe type of the identifiable owner to start from.
TIdentifiableThe type of the nested IIdentifiable to find.
TryFindNearestParent<TParentIdentifiable>(IIdentifiable, Predicate<TParentIdentifiable>, out TParentIdentifiable?)
Tries to find the nearest TParentIdentifiable parent of this identifiable
that satisfies the given predicate.
public static bool TryFindNearestParent<TParentIdentifiable>(this IIdentifiable identifiable, Predicate<TParentIdentifiable> predicate, out TParentIdentifiable? parentIdentifiable) where TParentIdentifiable : IIdentifiable
Parameters
identifiableIIdentifiableThe IIdentifiable to start looking from.
predicatePredicate<TParentIdentifiable>The predicate that a potential parent must satisfy.
parentIdentifiableTParentIdentifiableThe parent satisfying the
predicateif found; otherwise,default.
Returns
- bool
trueif a parent satisfying thepredicatewas found; otherwise,false.
Type Parameters
TParentIdentifiableThe type of the parent IIdentifiable to look for.
TryFindNearestParent<TParentIdentifiable>(IIdentifiable, out TParentIdentifiable?)
Tries to find the nearest TParentIdentifiable parent of this identifiable.
public static bool TryFindNearestParent<TParentIdentifiable>(this IIdentifiable identifiable, out TParentIdentifiable? parentIdentifiable) where TParentIdentifiable : IIdentifiable
Parameters
identifiableIIdentifiableThe IIdentifiable to start looking from.
parentIdentifiableTParentIdentifiableThe parent if found; otherwise,
default.
Returns
- bool
trueif a parent was found; otherwise,false.
Type Parameters
TParentIdentifiableThe type of the parent IIdentifiable to look for.
TryGet<TIdentifiable>(IIdentifiableCollection<TIdentifiable>)
Starts a try-search for a child TIdentifiable from this object.
public static IIdentifiableTrySearch<TIdentifiable> TryGet<TIdentifiable>(this IIdentifiableCollection<TIdentifiable> identifiableCollection) where TIdentifiable : IIdentifiable
Parameters
identifiableCollectionIIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IIdentifiableTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
TryGet<TIdentifiable>(IIdentifiableOwner<TIdentifiable>)
Starts a try-search for a child TIdentifiable from this object.
public static IIdentifiableOwnerTrySearch<TIdentifiable> TryGet<TIdentifiable>(this IIdentifiableOwner<TIdentifiable> identifiableOwner) where TIdentifiable : INestedIdentifiable
Parameters
identifiableOwnerIIdentifiableOwner<TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
TryGet<TIdentifiable>(INestedIdentifiableCollection<TIdentifiable>)
Starts a try-search for a child TIdentifiable from this object.
public static INestedIdentifiableTrySearch<TIdentifiable> TryGet<TIdentifiable>(this INestedIdentifiableCollection<TIdentifiable> nestedIdentifiableCollection) where TIdentifiable : INestedIdentifiable
Parameters
nestedIdentifiableCollectionINestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- INestedIdentifiableTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
TryGet<TIdentifiable>(INestedIdentifiableOwner<TIdentifiable>)
Starts a try-search for a child TIdentifiable from this object.
public static INestedIdentifiableOwnerTrySearch<TIdentifiable> TryGet<TIdentifiable>(this INestedIdentifiableOwner<TIdentifiable> nestedIdentifiableOwner) where TIdentifiable : INestedIdentifiable
Parameters
nestedIdentifiableOwnerINestedIdentifiableOwner<TIdentifiable>The nested identifiable owner to start from.
Returns
- INestedIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiableThe type of the nested IIdentifiable to find.
TryGet<TOwner, TIdentifiable>(IIdentifiableOwner<TOwner, TIdentifiable>)
Starts a try-search for a child TIdentifiable from this object.
public static IIdentifiableOwnerTrySearch<TIdentifiable> TryGet<TOwner, TIdentifiable>(this IIdentifiableOwner<TOwner, TIdentifiable> identifiableOwner) where TOwner : IIdentifiableOwner<TOwner, TIdentifiable> where TIdentifiable : INestedIdentifiable<TOwner>
Parameters
identifiableOwnerIIdentifiableOwner<TOwner, TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TOwnerThe type of the identifiable owner to start from.
TIdentifiableThe type of the nested IIdentifiable to find.