public void TestExp() { CodeExpressionVisitor v = new CodeExpressionVisitor(new VisitorContext()); int i = 10; Expression <Func <int> > k = () => i; Assert.IsInstanceOfType(v.Visit(k), typeof(CodePrimitiveExpression)); }
public static IfCodeBody <TThis> IfEmittedBase <TParent, TThis>(FluentCodeBody <TParent, TThis> body, Expression condition) where TThis : FluentCodeBody <TParent, TThis> { CodeExpression cond = new CodeExpressionVisitor(new VisitorContext()).Visit(condition); return(body.If(cond)); }
public static TThis StmtEmittedBase <TParent, TThis>(FluentCodeBody <TParent, TThis> body, Expression condition) where TThis : FluentCodeBody <TParent, TThis> { CodeExpression expr = new CodeExpressionVisitor(new VisitorContext()).Visit(condition); body.Stmt(expr); return(FluentCodeBody <TParent, TThis> .ThisConverter(body)); }
private static CodeExpression ExprInner(Expression expression) { CodeExpression expr = new CodeExpressionVisitor(new VisitorContext()).Visit(expression); return(expr); }