Пример #1
0
 def action_exp(toks):
     tok = toks[0]
     if isinstance(tok, env.exp): return tok
     if len(tok) == 2:
         op = tok[0]
         r = tok[1]
         if isinstance(r, list): r = action_exp(r)
         return env.oper(op, r)
     elif len(tok) == 3:
         op = tok[1]
         l = tok[0]
         r = tok[2]
         if isinstance(l, list): l = action_exp(l)
         if isinstance(r, list): r = action_exp(r)
         return env.oper(op, l, r)
     else:
         return tok
Пример #2
0
 def action_exp(toks):
     tok = toks[0]
     if isinstance(tok,env.exp): return tok
     if len(tok)==2:
         op=tok[0]
         r=tok[1]
         if isinstance(r,list): r=action_exp(r)
         return env.oper(op,r)
     elif len(tok)==3:
         op=tok[1]
         l=tok[0]
         r=tok[2]
         if isinstance(l,list): l=action_exp(l)
         if isinstance(r,list): r=action_exp(r)
         return env.oper(op,l,r)
     else:
         return tok