public NewLambdaExp(Exp srcExp, Exp actionExp, Type funcType) : base(srcExp) { var nestedFieldExps = new Dictionary <string, VarExp>(); actionExp.GetNestedFields(nestedFieldExps); lambdaExp = new ClosureExp(this); lambdaExp.FieldExps = nestedFieldExps; lambdaExp.BodyExp = actionExp; lambdaExp.FnRetType = funcType; if (funcType == TKTLambda.ActionType) { lambdaExp.RetType = typeof(void); } else if (funcType == TKTLambda.CondtionType) { lambdaExp.RetType = typeof(bool); } }
public override void GetNestedFields(Dictionary <string, VarExp> nestedField) { ValueExp.GetNestedFields(nestedField); }