public object Execute(IBatchExpression expression) { if (expression.SideExpressions != null) { foreach (var sideExpression in expression.SideExpressions) { _expressionExecutorFactory.Value.Execute(sideExpression); } } return(_expressionExecutorFactory.Value.Execute(expression.ResultExpression)); }
private object Act(IBatchExpression expression, IExpressionExecutor expressionExecutor) { var executor = new BatchExpressionExecutor(new Lazy <IExpressionExecutor>(() => expressionExecutor)); return(executor.Execute(expression)); }