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
identifiable
IIdentifiableThe IIdentifiable to start looking from.
Returns
- TParentIdentifiable
The found parent.
Type Parameters
TParentIdentifiable
The 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
identifiable
IIdentifiableThe IIdentifiable to start looking from.
predicate
Predicate<TParentIdentifiable>The predicate that a potential parent must satisfy.
Returns
- TParentIdentifiable
The parent satisfying the
predicate
.
Type Parameters
TParentIdentifiable
The 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
identifiableCollection
IIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IEnumerable<TIdentifiable>
An enumerable of all child
TIdentifiable
.
Type Parameters
TIdentifiable
The 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
nestedIdentifiableCollection
INestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- IEnumerable<TIdentifiable>
An enumerable of all child
TIdentifiable
.
Type Parameters
TIdentifiable
The 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
identifiableCollection
IIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IIdentifiableSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiable
The 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
identifiableOwner
IIdentifiableOwner<TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiable
The 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
nestedIdentifiableCollection
INestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- INestedIdentifiableSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiable
The 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
nestedIdentifiableOwner
INestedIdentifiableOwner<TIdentifiable>The nested identifiable owner to start from.
Returns
- INestedIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TIdentifiable
The 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
identifiableOwner
IIdentifiableOwner<TOwner, TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerSearch<TIdentifiable>
The search object for it.
Type Parameters
TOwner
The type of the identifiable owner to start from.
TIdentifiable
The 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
identifiable
IIdentifiableThe IIdentifiable to start looking from.
predicate
Predicate<TParentIdentifiable>The predicate that a potential parent must satisfy.
parentIdentifiable
TParentIdentifiableThe parent satisfying the
predicate
if found; otherwise,default
.
Returns
- bool
true
if a parent satisfying thepredicate
was found; otherwise,false
.
Type Parameters
TParentIdentifiable
The 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
identifiable
IIdentifiableThe IIdentifiable to start looking from.
parentIdentifiable
TParentIdentifiableThe parent if found; otherwise,
default
.
Returns
- bool
true
if a parent was found; otherwise,false
.
Type Parameters
TParentIdentifiable
The 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
identifiableCollection
IIdentifiableCollection<TIdentifiable>The identifiable collection to start from.
Returns
- IIdentifiableTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiable
The 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
identifiableOwner
IIdentifiableOwner<TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiable
The 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
nestedIdentifiableCollection
INestedIdentifiableCollection<TIdentifiable>The nested identifiable collection to start from.
Returns
- INestedIdentifiableTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiable
The 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
nestedIdentifiableOwner
INestedIdentifiableOwner<TIdentifiable>The nested identifiable owner to start from.
Returns
- INestedIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TIdentifiable
The 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
identifiableOwner
IIdentifiableOwner<TOwner, TIdentifiable>The identifiable owner to start from.
Returns
- IIdentifiableOwnerTrySearch<TIdentifiable>
The try-search object for it.
Type Parameters
TOwner
The type of the identifiable owner to start from.
TIdentifiable
The type of the nested IIdentifiable to find.