Open sandboxFocus

Namespace Metalama.Extensions.DependencyInjection.Implementation

Classes

DefaultDependencyInjectionFramework

The default implementation of IDependencyInjectionFramework. It pulls dependencies from all constructors and use Func<TResult> to accept lazy dependencies.

DefaultDependencyInjectionStrategy

The default implementation of the TryIntroduceDependency(DependencyProperties, IAspectBuilder<INamedType>, out IFieldOrProperty?) interface method. It is designed to be easily extended and overwritten.

DefaultPullStrategy

The default implementation of IPullStrategy.

DependencyInjectionFrameworkRegistration

Represents a registration of a IDependencyInjectionFramework.

DependencyInjectionOptions

Options that influence the processing of IntroduceDependencyAttribute. To set these options, use ConfigureDependencyInjection(IAspectReceiver<ICompilation>, Action<DependencyInjectionOptionsBuilder>).

LazyDependencyInjectionStrategy

A dependency implementation strategy that resolves the dependencies the first time they are used and pull a Func<TResult> from the constructor.

LazyDependencyInjectionStrategy.TemplateArgs

LoggerDependencyInjectionFramework

SuppressionHelper

Structs

ParameterSpecification

Specifies a constructor parameter.

Interfaces

IDependencyInjectionFramework

Interface that dependency injection framework adapters must implement to handle the IntroduceDependencyAttribute advice. An implementation typically also implements IPullStrategy.

IPullStrategy

Interface used by DefaultDependencyInjectionStrategy to pull a field or property from the constructor. This interface is instantiated from GetPullStrategy(IFieldOrProperty). You must override this method if you want to provide a custom implementation of IPullStrategy. The default implementation is DefaultPullStrategy.