C# Class SexyProxy.Fody.MethodWeaver

Mostrar archivo Open project: kswoll/sexy-proxy

Public Methods

Method Description
DefineProxy ( ) : void

Protected Methods

Method Description
EmitCallToInvocationHandler ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed ) : void
EmitInvocation ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed ) : void
EmitInvocationArgumentsArray ( Mono.Cecil.Cil.ILProcessor il, int size ) : void
EmitInvocationHandler ( Mono.Cecil.Cil.ILProcessor il ) : void
EmitOptOutTarget ( Mono.Cecil.Cil.ILProcessor il ) : void
EmitProceedTarget ( Mono.Cecil.Cil.ILProcessor il ) : void
EmitProxyFromProceed ( Mono.Cecil.Cil.ILProcessor il ) : void
GetProceedCallOpCode ( ) : Mono.Cecil.Cil.OpCode
GetProceedMethodTarget ( ) : MethodReference
GetProxyTypeReference ( ) : TypeReference
ImplementBody ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed, MethodReference proceedTargetMethod ) : void
ImplementProceed ( Mono.Cecil.MethodDefinition methodInfo, MethodBody methodBody, Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, MethodReference proceed, Action emitProceedTarget, MethodReference proceedTargetMethod, Mono.Cecil.Cil.OpCode proceedOpCode ) : void
Import ( MethodReference method ) : MethodReference
Import ( TypeReference type ) : TypeReference
MethodWeaver ( ClassWeaver classWeaver, Mono.Cecil.MethodDefinition method, string name, Mono.Cecil.MethodDefinition staticConstructor ) : System
ProxyMethod ( MethodBody body, MethodReference proceedTargetMethod ) : void

Private Methods

Method Description
ImplementOptOut ( Mono.Cecil.Cil.ILProcessor il, MethodReference proceedTargetMethod ) : void
SetUpTypes ( ) : void

Method Details

DefineProxy() public method

public DefineProxy ( ) : void
return void

EmitCallToInvocationHandler() protected method

protected EmitCallToInvocationHandler ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed ) : void
il Mono.Cecil.Cil.ILProcessor
methodInfoField Mono.Cecil.FieldReference
propertyInfoField Mono.Cecil.FieldReference
proceed Mono.Cecil.MethodReference
return void

EmitInvocation() protected method

protected EmitInvocation ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed ) : void
il Mono.Cecil.Cil.ILProcessor
methodInfoField Mono.Cecil.FieldReference
propertyInfoField Mono.Cecil.FieldReference
proceed Mono.Cecil.MethodReference
return void

EmitInvocationArgumentsArray() protected method

protected EmitInvocationArgumentsArray ( Mono.Cecil.Cil.ILProcessor il, int size ) : void
il Mono.Cecil.Cil.ILProcessor
size int
return void

EmitInvocationHandler() protected abstract method

protected abstract EmitInvocationHandler ( Mono.Cecil.Cil.ILProcessor il ) : void
il Mono.Cecil.Cil.ILProcessor
return void

EmitOptOutTarget() protected abstract method

protected abstract EmitOptOutTarget ( Mono.Cecil.Cil.ILProcessor il ) : void
il Mono.Cecil.Cil.ILProcessor
return void

EmitProceedTarget() protected abstract method

protected abstract EmitProceedTarget ( Mono.Cecil.Cil.ILProcessor il ) : void
il Mono.Cecil.Cil.ILProcessor
return void

EmitProxyFromProceed() protected method

protected EmitProxyFromProceed ( Mono.Cecil.Cil.ILProcessor il ) : void
il Mono.Cecil.Cil.ILProcessor
return void

GetProceedCallOpCode() protected method

protected GetProceedCallOpCode ( ) : Mono.Cecil.Cil.OpCode
return Mono.Cecil.Cil.OpCode

GetProceedMethodTarget() protected method

protected GetProceedMethodTarget ( ) : MethodReference
return Mono.Cecil.MethodReference

GetProxyTypeReference() protected method

protected GetProxyTypeReference ( ) : TypeReference
return Mono.Cecil.TypeReference

ImplementBody() protected method

protected ImplementBody ( Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, FieldReference propertyInfoField, MethodReference proceed, MethodReference proceedTargetMethod ) : void
il Mono.Cecil.Cil.ILProcessor
methodInfoField Mono.Cecil.FieldReference
propertyInfoField Mono.Cecil.FieldReference
proceed Mono.Cecil.MethodReference
proceedTargetMethod Mono.Cecil.MethodReference
return void

ImplementProceed() protected method

protected ImplementProceed ( Mono.Cecil.MethodDefinition methodInfo, MethodBody methodBody, Mono.Cecil.Cil.ILProcessor il, FieldReference methodInfoField, MethodReference proceed, Action emitProceedTarget, MethodReference proceedTargetMethod, Mono.Cecil.Cil.OpCode proceedOpCode ) : void
methodInfo Mono.Cecil.MethodDefinition
methodBody Mono.Cecil.Cil.MethodBody
il Mono.Cecil.Cil.ILProcessor
methodInfoField Mono.Cecil.FieldReference
proceed Mono.Cecil.MethodReference
emitProceedTarget Action
proceedTargetMethod Mono.Cecil.MethodReference
proceedOpCode Mono.Cecil.Cil.OpCode
return void

Import() protected method

protected Import ( MethodReference method ) : MethodReference
method Mono.Cecil.MethodReference
return Mono.Cecil.MethodReference

Import() protected method

protected Import ( TypeReference type ) : TypeReference
type Mono.Cecil.TypeReference
return Mono.Cecil.TypeReference

MethodWeaver() protected method

protected MethodWeaver ( ClassWeaver classWeaver, Mono.Cecil.MethodDefinition method, string name, Mono.Cecil.MethodDefinition staticConstructor ) : System
classWeaver ClassWeaver
method Mono.Cecil.MethodDefinition
name string
staticConstructor Mono.Cecil.MethodDefinition
return System

ProxyMethod() protected method

protected ProxyMethod ( MethodBody body, MethodReference proceedTargetMethod ) : void
body Mono.Cecil.Cil.MethodBody
proceedTargetMethod Mono.Cecil.MethodReference
return void