C# Class System.Linq.Expressions.Interpreter.CallInstruction

Inheritance: Instruction
Afficher le fichier Open project: dotnet/corefx Class Usage Examples

Méthodes publiques

Méthode Description
ArrayItemSetter1 ( Array array, int index0, object value ) : void
ArrayItemSetter2 ( Array array, int index0, int index1, object value ) : void
ArrayItemSetter3 ( Array array, int index0, int index1, int index2, object value ) : void
Create ( MethodInfo info ) : CallInstruction
Create ( MethodInfo info, ParameterInfo parameters ) : CallInstruction

Creates a new ReflectedCaller which can be used to quickly invoke the provided MethodInfo.

ToString ( ) : string

Méthodes protégées

Méthode Description
InterpretLambdaInvoke ( LightLambda targetLambda, object args ) : object
TryGetLightLambdaTarget ( object instance, LightLambda &lightLambda ) : bool

If the target of invocation happens to be a delegate over enclosed instance lightLambda, return that instance. We can interpret LightLambdas directly.

Private Methods

Méthode Description
CallInstruction ( ) : System.Collections.Generic
GetArrayAccessor ( MethodInfo info, int argumentCount ) : CallInstruction
IndexIsNotReturnType ( int index, MethodInfo target, ParameterInfo pi ) : bool
ShouldCache ( MethodInfo info ) : bool
SlowCreate ( MethodInfo info, ParameterInfo pis ) : CallInstruction

Uses reflection to create new instance of the appropriate ReflectedCaller

TryGetParameterOrReturnType ( MethodInfo target, ParameterInfo pi, int index ) : Type

Gets the next type or null if no more types are available.

Method Details

ArrayItemSetter1() public static méthode

public static ArrayItemSetter1 ( Array array, int index0, object value ) : void
array Array
index0 int
value object
Résultat void

ArrayItemSetter2() public static méthode

public static ArrayItemSetter2 ( Array array, int index0, int index1, object value ) : void
array Array
index0 int
index1 int
value object
Résultat void

ArrayItemSetter3() public static méthode

public static ArrayItemSetter3 ( Array array, int index0, int index1, int index2, object value ) : void
array Array
index0 int
index1 int
index2 int
value object
Résultat void

Create() public static méthode

public static Create ( MethodInfo info ) : CallInstruction
info System.Reflection.MethodInfo
Résultat CallInstruction

Create() public static méthode

Creates a new ReflectedCaller which can be used to quickly invoke the provided MethodInfo.
public static Create ( MethodInfo info, ParameterInfo parameters ) : CallInstruction
info System.Reflection.MethodInfo
parameters System.Reflection.ParameterInfo
Résultat CallInstruction

InterpretLambdaInvoke() protected méthode

protected InterpretLambdaInvoke ( LightLambda targetLambda, object args ) : object
targetLambda LightLambda
args object
Résultat object

ToString() public méthode

public ToString ( ) : string
Résultat string

TryGetLightLambdaTarget() protected static méthode

If the target of invocation happens to be a delegate over enclosed instance lightLambda, return that instance. We can interpret LightLambdas directly.
protected static TryGetLightLambdaTarget ( object instance, LightLambda &lightLambda ) : bool
instance object
lightLambda LightLambda
Résultat bool