Esempio n. 1
0
    def eval_input(self, input):
        lexer = ExprLexer(input)
        token = CommonTokenStream(lexer)
        parser = ExprParser(token)

        tree = parser.prog()

        visitor = EvalExprVisitor()

        return visitor.visit(tree)
Esempio n. 2
0
    def eval_input(self, input):
        lexer = ExprLexer(input)
        token = CommonTokenStream(lexer)
        parser = ExprParser(token)

        tree = parser.prog()

        if self.doDebug:
            print(tree.toStringTree(recog=parser))

        evalExprListener = EvalExprListener()
        evalExprListener.doDebug = self.doDebug

        walker = ParseTreeWalker()
        walker.walk(evalExprListener, tree)

        return evalExprListener.result