示例#1
0
        protected IProgramPart Expr <T>(dynamic ctx, Func <T, T, T> xformer)
        {
            var left = Visit(ctx.left) as IExpression <T>;

            if (ctx.right == null)
            {
                return(left);
            }
            var right = Visit(ctx.right) as IExpression <T>;

            return(TwoTermExpression <T> .Create <T>(left, right, xformer));
        }
示例#2
0
        protected IProgramPart Expr(dynamic ctx, string oper, Func <dynamic, dynamic, dynamic> xformer)
        {
            var left = Visit(ctx.left) as IExpression;

            if (ctx.right == null)
            {
                return(left);
            }
            var right = Visit(ctx.right) as IExpression;

            return(TwoTermExpression.Create(left, right, xformer, oper));
        }