def runstring(self, s): ast = parse(s) bc = compile_ast("<input>", s, ast) if self.debug: # pragma: no cover print bc.dump() return self.run(bc)
def check_compile(self, source, expected=None): ast = parse(source) bc = compile_ast('<input>', source, ast) if expected is not None: self.compare(bc, expected) return bc
def interpret(self, source): bc = compile_ast("<input>", source, parse(source)) frame = run_bytecode(bc) return frame.pop()