C# Class Hiro.Implementations.PropertyInjectionCall

Represents an IImplementation type that adds property injection capabilities to other IImplementation instances.
Inheritance: IImplementation
显示文件 Open project: philiplaureano/Hiro Class Usage Examples

Public Methods

Method Description
Emit ( IDependency dependency, IImplementation>.IDictionary serviceMap, Mono.Cecil.MethodDefinition targetMethod ) : void

Emits the instructions that will instantiate the current implementation.

GetMissingDependencies ( IDependencyContainer map ) : IEnumerable

Gets the list of missing dependencies from the current implementation.

GetRequiredDependencies ( IDependencyContainer map ) : IEnumerable

Returns the dependencies required by the current implementation.

PropertyInjectionCall ( IStaticImplementation implementation ) : System

Initializes a new instance of the PropertyInjector class.

PropertyInjectionCall ( IStaticImplementation implementation, bool>.Func propertyFilter, IDependency>.Func propertyDependencyResolver ) : System

Initializes a new instance of the PropertyInjector class.

Private Methods

Method Description
EmitPropertySetter ( IImplementation>.IDictionary serviceMap, Mono.Cecil.MethodDefinition targetMethod, Mono.Cecil.ModuleDefinition module, Mono.Cecil.Cil.ILProcessor il, PropertyInfo property, IDependency curentDependency ) : void

Emits the instructions that will instantiate each property value and assign it to the target property.

Method Details

Emit() public method

Emits the instructions that will instantiate the current implementation.
public Emit ( IDependency dependency, IImplementation>.IDictionary serviceMap, Mono.Cecil.MethodDefinition targetMethod ) : void
dependency IDependency The dependency that describes the service to be instantiated.
serviceMap IImplementation>.IDictionary The service map that contains the list of dependencies in the application.
targetMethod Mono.Cecil.MethodDefinition The target method.
return void

GetMissingDependencies() public method

Gets the list of missing dependencies from the current implementation.
public GetMissingDependencies ( IDependencyContainer map ) : IEnumerable
map IDependencyContainer The implementation map.
return IEnumerable

GetRequiredDependencies() public method

Returns the dependencies required by the current implementation.
public GetRequiredDependencies ( IDependencyContainer map ) : IEnumerable
map IDependencyContainer The implementation map.
return IEnumerable

PropertyInjectionCall() public method

Initializes a new instance of the PropertyInjector class.
public PropertyInjectionCall ( IStaticImplementation implementation ) : System
implementation IStaticImplementation The target implementation that will instantiate the service type.
return System

PropertyInjectionCall() public method

Initializes a new instance of the PropertyInjector class.
public PropertyInjectionCall ( IStaticImplementation implementation, bool>.Func propertyFilter, IDependency>.Func propertyDependencyResolver ) : System
implementation IStaticImplementation The target implementation that will instantiate the service type.
propertyFilter bool>.Func The functor that determines which properties will be injected.
propertyDependencyResolver IDependency>.Func The functor that determines the dependencies that will be injected into each property.
return System