示例#1
0
文件: query.py 项目: jier38/TracSite
 def _generate(node):
     if node.type == node.TERM:
         return ast.Compare(ast.Const(node.value),
                            [('in', ast.Name('text'))])
     elif node.type == node.AND:
         return ast.And([_generate(node.left), _generate(node.right)])
     elif node.type == node.OR:
         return ast.Or([_generate(node.left), _generate(node.right)])
     elif node.type == node.NOT:
         return ast.Not(_generate(node.left))
     elif node.type == node.ATTR:
         raise NotImplementedError
示例#2
0
 def _do_OrExpression(self, node):
     left = self.transform(node.Left)
     right = self.transform(node.Right)
     return ast.Or([left, right])