Open sandboxFocus

Interface ITaggedQuery<TDeclaration, TTag>

Namespace: Metalama.Framework.Fabrics
Assembly: Metalama.Framework.dll
Syntax
public interface ITaggedQuery<out TDeclaration, out TTag> : IQuery<TDeclaration>, IQuery where TDeclaration : class, IDeclaration
Type Parameters
Name Description
TDeclaration
TTag

Methods

Name Description
OfType<TOut>()
SelectMany<TMember>(Func<TDeclaration, IEnumerable<TMember>>)

Projects each declaration of the current set to an IEnumerable<T> (typically a list of child declarations) and flattens the resulting sequences into one set.

SelectMany<TMember>(Func<TDeclaration, TTag, IEnumerable<TMember>>)

Projects each declaration of the current set to an IEnumerable<T> (typically a list of child declarations) and flattens the resulting sequences into one set. This overload does supplies the tag to the selector delegate.

SelectTypes(bool)

Selects all types enclosed in declarations of the current set.

SelectTypesDerivedFrom(INamedType, DerivedTypesOptions)

Selects all types, among those enclosed in declarations of the current set, that derive from or implement a given INamedType.

SelectTypesDerivedFrom(Type, DerivedTypesOptions)

Selects all types, among those enclosed in declarations of the current set, that derive from or implement a given Type.

Select<TMember>(Func<TDeclaration, TTag, TMember>)

Projects each declaration of the current set into a new declaration. This overload does supplies the tag to the selector delegate.

Select<TMember>(Func<TDeclaration, TMember>)

Projects each declaration of the current set into a new declaration.

Tag<TNewTag>(Func<TDeclaration, TTag, TNewTag>)
Tag<TNewTag>(Func<TDeclaration, TNewTag>)
Where(Func<TDeclaration, bool>)

Filters the set of declarations based on a predicate.

Where(Func<TDeclaration, TTag, bool>)

Filters the set of declarations based on a predicate. This overload does supplies the tag to the predicate delegate.

WithTag<TNewTag>(Func<TDeclaration, TTag, TNewTag>)

Projects the declarations in the current set by replacing the tag of each declaration. This overload does supplies the old tag to the getTag delegate.

WithTag<TNewTag>(Func<TDeclaration, TNewTag>)

Projects the declarations in the current set by replacing the tag of each declaration.

Extension Methods