Beispiel #1
0
        public ILocalIndexer Invoke(MethodInfo methodInfo)
        {
            var parameters = new List <IGeneratedParameter>();

            int argCount = 0;

            foreach (ParameterInfo info in methodInfo.GetParameters())
            {
                argCount++;
                parameters.Add(new ExpressionParameter(info.ParameterType, argCount));
            }

            actions.Add(new VariableLoadAction(method, this.LocalIndex));
            return(method.Call(() => methodInfo, () => parameters));
        }
Beispiel #2
0
 public ILocalIndexer Call(GeneratedMethod info, Type returnType)
 {
     return(GeneratedMethod.Call(() => info, returnType));
 }
Beispiel #3
0
 public ILocalIndexer Call(Func <GeneratedMethod> info, Func <List <GeneratedField> > fields)
 {
     return(GeneratedMethod.Call(info, fields));
 }
Beispiel #4
0
 public ILocalIndexer Call(Func <MethodInfo> info, Func <List <IGeneratedParameter> > parameters)
 {
     return(GeneratedMethod.Call(info, parameters));
 }