Пример #1
0
        public bool ExecuteEvaluateDynamic <T>(Tuple <List <AbstractSyntaxTree.AbstractSyntaxTreeNode>,
                                                      Dictionary <string, AbstractSyntaxTree.AbstractSyntaxTreeNode> > values, dynamic objectValue)
        {
            ExpressionEvaluatorDynamic expressionEvaluator = new ExpressionEvaluatorDynamic();
            var result = expressionEvaluator.EvaluateDynamic(values.Item1, values.Item2, objectValue);

            return(result);
        }
Пример #2
0
        public R EvaluateNonBooleanDynamic <R>(string evaluationText, dynamic[] collection)
        {
            ExpressionEvaluatorLexer  expressionEvaluatorLexer  = new ExpressionEvaluatorLexer(evaluationText, 1);
            ExpressionEvaluatorParser expressionEvaluatorParser = new ExpressionEvaluatorParser(expressionEvaluatorLexer);
            var AbstractSyntaxTreeNodeList = expressionEvaluatorParser.BuildParseTree();
            ExpressionEvaluatorDynamic expressionEvaluator = new ExpressionEvaluatorDynamic();
            var result = expressionEvaluator.EvaluateNonBooleanDynamic <R>(AbstractSyntaxTreeNodeList, expressionEvaluatorParser.SymbolTable, collection);

            return(result);
        }
Пример #3
0
        public bool EvaluateDynamic(string evaluationText, DynamicBaseClass objectValue)
        {
            ExpressionEvaluatorLexer  expressionEvaluatorLexer  = new ExpressionEvaluatorLexer(evaluationText, 1);
            ExpressionEvaluatorParser expressionEvaluatorParser = new ExpressionEvaluatorParser(expressionEvaluatorLexer);
            var AbstractSyntaxTreeNodeList = expressionEvaluatorParser.BuildParseTree();
            ExpressionEvaluatorDynamic expressionEvaluator = new ExpressionEvaluatorDynamic();
            var result = expressionEvaluator.EvaluateDynamic(AbstractSyntaxTreeNodeList, expressionEvaluatorParser.SymbolTable, objectValue);

            return(result);
        }