コード例 #1
0
 public static Delegate CompileLambda(Node n)
 {
     n = JavaScriptTransformer.Transform(n);
     var compiler = new JavaScriptExpressionCompiler();
     var expr = (LambdaExpression)compiler.ToExpr(n);
     if (expr == null) return null;
     return expr.Compile();
 }
コード例 #2
0
        public static Delegate CompileLambda(Node n)
        {
            n = JavaScriptTransformer.Transform(n);
            var compiler = new JavaScriptExpressionCompiler();
            var expr     = (LambdaExpression)compiler.ToExpr(n);

            if (expr == null)
            {
                return(null);
            }
            return(expr.Compile());
        }
コード例 #3
0
 public static void TestCompile(string s, params object[] args)
 {
     Console.WriteLine("Testing {0} with args ({1})", s, String.Join(", ", args));
     try
     {
         var f = JavaScriptExpressionCompiler.CompileLambda(s);
         var r = f.DynamicInvoke(args);
         Console.WriteLine("Result is {0}", r);
     }
     catch (Exception e)
     {
         Console.WriteLine("error occured " + e.Message);
     }
 }