Class MultiDecoratorProvider<TDecorated, TDecorator, TAttribute>
Inheritance
MultiDecoratorProvider<TDecorated, TDecorator, TAttribute>
Syntax
public abstract class MultiDecoratorProvider<TDecorated, TDecorator, TAttribute>
where TAttribute : Attribute, IDecoratorAttribute
Type Parameters
Name |
Description |
TDecorated |
|
TDecorator |
|
TAttribute |
|
Constructors
MultiDecoratorProvider()
Declaration
protected MultiDecoratorProvider()
Fields
definedDecoratorTypes
Declaration
protected readonly Dictionary<Type, HashSet<Type>> definedDecoratorTypes
Field Value
Properties
typeset
Declaration
protected virtual IEnumerable<Type> typeset { get; }
Property Value
Methods
ClearCache()
Declaration
public virtual void ClearCache()
CreateDecorators(TDecorated)
Declaration
protected virtual IEnumerable<TDecorator> CreateDecorators(TDecorated decorated)
Parameters
Type |
Name |
Description |
TDecorated |
decorated |
|
Returns
GetDecorators(TDecorated)
Declaration
public IEnumerable<TDecorator> GetDecorators(TDecorated decorated)
Parameters
Type |
Name |
Description |
TDecorated |
decorated |
|
Returns
GetDecorators<TSpecificDecorator>(TDecorated)
Declaration
public IEnumerable<TSpecificDecorator> GetDecorators<TSpecificDecorator>(TDecorated decorated)
where TSpecificDecorator : TDecorator
Parameters
Type |
Name |
Description |
TDecorated |
decorated |
|
Returns
Type Parameters
Name |
Description |
TSpecificDecorator |
|
GetDecoratorTypes(Type)
Declaration
public IEnumerable<Type> GetDecoratorTypes(Type type)
Parameters
Type |
Name |
Description |
Type |
type |
|
Returns
HasDecorator(Type)
Declaration
public bool HasDecorator(Type type)
Parameters
Type |
Name |
Description |
Type |
type |
|
Returns
ResolveDecoratorTypes(Type)
Declaration
protected virtual IEnumerable<Type> ResolveDecoratorTypes(Type type)
Parameters
Type |
Name |
Description |
Type |
type |
|
Returns
ResolveDecoratorTypesByHierarchy(Type, Boolean)
Declaration
protected IEnumerable<Type> ResolveDecoratorTypesByHierarchy(Type type, bool inherit)
Parameters
Returns
ShouldInvalidateDecorators(TDecorated)
Declaration
protected virtual bool ShouldInvalidateDecorators(TDecorated decorated)
Parameters
Type |
Name |
Description |
TDecorated |
decorated |
|
Returns
Extension Methods