Open sandboxFocus

Class FormatterRepository<TRole>

Allows to get and register formatters for a specific type.

Inheritance
FormatterRepository<TRole>
Namespace: PostSharp.Patterns.Formatters
Assembly: PostSharp.Patterns.Common.dll
Syntax
public abstract class FormatterRepository<TRole> where TRole : FormattingRole, new()
Type Parameters
Name Description
TRole

Marker type used to differentiate FormattingServices for different purposes (e.g. caching or logging).

Constructors

Name Description
FormatterRepository()

Initializes a new FormatterRepository<TRole>.

Methods

Name Description
Get(Type)

Returns a formatter for a specific object. This overload should be used when the type of the object is not known at build time because the type is non-sealed.

Get<T>()

Returns the formatter for the type T.

Register(Type, IFormatter)

Registers the given formatter for the given targetType.

Register(Type, Type)

Registers the given formatterType for the given targetType.

Register<T>(IFormatter<T>)

Registers the given formatter for the type T.

Reset()

Clears formatters, but doesn't reset registrations.

SetDynamic<T>()

Requests that formatters for parameters of a given type will be resolved according to the type of the parameter value, not to the type of the parameter itself. Interfaces, abstract classes and the object class are always resolved dynamically.