27 return "Call(" +
_target.Method?.ToString() +
")";
30internal sealed class ActionCallInstruction<T0> : CallInstruction
48 object obj = frame.
Data[frame.StackIndex - 1];
67 return "Call(" +
_target.Method?.ToString() +
")";
70internal sealed class ActionCallInstruction<T0, T1> : CallInstruction
88 object obj = frame.
Data[frame.StackIndex - 2];
101 frame.StackIndex -= 2;
107 return "Call(" +
_target.Method?.ToString() +
")";
110internal sealed class ActionCallInstruction<T0, T1, T2> : CallInstruction
128 object obj = frame.
Data[frame.StackIndex - 3];
137 frame.
Data[frame.StackIndex - 2],
138 frame.
Data[frame.StackIndex - 1]
145 frame.StackIndex -= 3;
151 return "Call(" +
_target.Method?.ToString() +
")";
158 private readonly Action<T0, T1, T2, T3>
_target;
172 object obj = frame.
Data[frame.StackIndex - 4];
181 frame.
Data[frame.StackIndex - 3],
182 frame.
Data[frame.StackIndex - 2],
183 frame.
Data[frame.StackIndex - 1]
190 frame.StackIndex -= 4;
196 return "Call(" +
_target.Method?.ToString() +
")";
override string ToString()
override int ProducedStack
override int Run(InterpretedFrame frame)
ActionCallInstruction(MethodInfo target)
readonly Action< T0, T1, T2, T3 > _target
readonly Action< T0 > _target
readonly bool _isInstance
override int ArgumentCount
readonly Action< T0, T1 > _target
readonly Action< T0, T1, T2 > _target
object InterpretLambdaInvoke(LightLambda targetLambda, object[] args)
static bool TryGetLightLambdaTarget(object instance, [NotNullWhen(true)] out LightLambda lightLambda)
static void NullCheck(object o)
virtual Delegate CreateDelegate(Type delegateType)