def test_linecount(self): b = Buffer('') self.assertEqual(1, b.linecount) b = Buffer('Hello World!') self.assertEqual(1, b.linecount) b = Buffer('\n') self.assertEqual(2, b.linecount)
def main(filename, trace): parser = ANTLRParser() with io.open(filename) as f: buffer = Buffer(f.read(), filename=filename, comments_re=COMMENTS_RE, trace=True) gname = path.splitext(path.basename(filename))[0] semantics = ANTLRSemantics(gname) model = parser.parse(buffer, filename=filename, semantics=semantics, trace=trace) print(model)
def start(self): while True: ui = input("> ") if ui == "quit" or ui == "exit": break else: try: ast = self.parser.parse(Buffer(ui, nameguard=False), rule_name='start') if self.debug: print("AST:", ast) self.interp.interpret(ast) if self.debug: self.interp.stack.print_stack() except Exception as e: print("ERROR: " + str(e)) e.traceback.print_exc()
def setUp(self): testfile = os.path.splitext(__file__)[0] + '.py' with open(testfile) as f: self.text = str(f.read()) self.buf = Buffer(self.text, whitespace='')