C# 클래스 Hiro.Implementations.BaseContainerCall

Represents a class that provides the basic fuctionality for a compiled IMicroContainer instance to compile itself.
상속: IImplementation
파일 보기 프로젝트 열기: philiplaureano/Hiro

공개 메소드들

메소드 설명
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.

보호된 메소드들

메소드 설명
BaseContainerCall ( System serviceType, string serviceName ) : System

Initializes a new instance of the NextContainerCall class.

EmitGetContainerInstance ( Mono.Cecil.ModuleDefinition module, TypeReference microContainerType, Mono.Cecil.Cil.ILProcessor il, Instruction skipCreate ) : void

Emits the instructions that will obtain the IMicroContainer instance.

메소드 상세

BaseContainerCall() 보호된 메소드

Initializes a new instance of the NextContainerCall class.
protected BaseContainerCall ( System serviceType, string serviceName ) : System
serviceType System The service type.
serviceName string The service name.
리턴 System

Emit() 공개 메소드

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.
리턴 void

EmitGetContainerInstance() 보호된 추상적인 메소드

Emits the instructions that will obtain the IMicroContainer instance.
protected abstract EmitGetContainerInstance ( Mono.Cecil.ModuleDefinition module, TypeReference microContainerType, Mono.Cecil.Cil.ILProcessor il, Instruction skipCreate ) : void
module Mono.Cecil.ModuleDefinition The target module.
microContainerType Mono.Cecil.TypeReference The type reference that points to the type.
il Mono.Cecil.Cil.ILProcessor The that points to the method body.
skipCreate Mono.Cecil.Cil.Instruction The skip label that will be used if the service cannot be instantiated.
리턴 void

GetMissingDependencies() 공개 메소드

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

GetRequiredDependencies() 공개 메소드

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