Beispiel #1
0
        public static object Interpret(LambdaExpression lambda, object [] arguments)
        {
            var interpreter = new ExpressionInterpreter(lambda, arguments);

            interpreter.Visit(lambda.Body);

            if (lambda.GetReturnType() != typeof(void))
            {
                return(interpreter.Pop());
            }

            return(null);
        }
		public static object Interpret (LambdaExpression lambda, object [] arguments)
		{
			var interpreter = new ExpressionInterpreter (lambda, arguments);
			interpreter.Visit (lambda.Body);

			if (lambda.GetReturnType () != typeof (void))
				return interpreter.Pop ();

			return null;
		}
Beispiel #3
0
 public Runner(LambdaExpression lambda, ExpressionInterpreter interpreter)
 {
     this.lambda      = lambda;
     this.interpreter = interpreter;
 }
Beispiel #4
0
 object Run(object [] arg)
 {
     return(ExpressionInterpreter.Interpret(lambda, arg));
 }