예제 #1
0
파일: engine.py 프로젝트: griels/pypy-sc
 def _build_and_run(self, tree):
     from pypy.lang.prolog.interpreter.parsing import TermBuilder
     builder = TermBuilder()
     term = builder.build_query(tree)
     if isinstance(term, Term) and term.name == ":-" and len(
             term.args) == 1:
         self.run(term.args[0])
     else:
         self.add_rule(term)
     return self.parser
예제 #2
0
파일: engine.py 프로젝트: griels/pypy-sc
 def parse(self, s):
     from pypy.lang.prolog.interpreter.parsing import parse_file, TermBuilder, lexer
     builder = TermBuilder()
     trees = parse_file(s, self.parser)
     terms = builder.build_many(trees)
     return terms, builder.varname_to_var