예제 #1
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   newEnv = solver.env.extend()
   solver.env = newEnv
   arity2rules, signature2rules = make_rules(self.rules)
   func = UserFunction(arity2rules, signature2rules, newEnv, recursive=True)
   return value_cont(func, cont)
예제 #2
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   arity2rules, signature2rules = make_rules(self.rules)
   macro = UserMacro(arity2rules, signature2rules, solver.env, recursive=False)
   return value_cont(macro, cont)
예제 #3
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   arity2rules, signature2rules = make_rules(self.rules)
   func = UserFunction(arity2rules, signature2rules, solver.env, recursive=False)
   return value_cont(func, cont)
예제 #4
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver): return value_cont(self.exp, cont)
 def __eq__(self, other): return self.exp==other.exp
예제 #5
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   return value_cont(self.global_env.bindings[self.var])
예제 #6
0
파일: special.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   return value_cont(solver.env.outer[self.var], cont)
예제 #7
0
파일: term.py 프로젝트: charyorde/dao
 def cont(self, cont, solver):
   return value_cont(self.getvalue(solver.env), cont)