本文整理汇总了Python中antlr3.treewizard.TreeWizard.visit方法的典型用法代码示例。如果您正苦于以下问题:Python TreeWizard.visit方法的具体用法?Python TreeWizard.visit怎么用?Python TreeWizard.visit使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类antlr3.treewizard.TreeWizard
的用法示例。
在下文中一共展示了TreeWizard.visit方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: testRepeatsVisitWithContext
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testRepeatsVisitWithContext(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B (A C B) B D D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append('%[email protected]%s[%d]' % (node, parent, childIndex))
wiz.visit(tree, wiz.getTokenType("B"), visitor)
expecting = ['[email protected][0]', '[email protected][1]', '[email protected][2]']
self.failUnlessEqual(expecting, elements)
示例2: testRepeatsVisit2
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testRepeatsVisit2(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B (A C B) B D D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(str(node))
wiz.visit(tree, wiz.getTokenType("A"), visitor)
expecting = ['A', 'A']
self.failUnlessEqual(expecting, elements)
示例3: testNoRepeatsVisit
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testNoRepeatsVisit(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(str(node))
wiz.visit(tree, wiz.getTokenType("B"), visitor)
expecting = ['B']
self.assertEqual(expecting, elements)
示例4: testVisitPattern
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testVisitPattern(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C (A B) D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
str(node)
)
wiz.visit(tree, '(A B)', visitor)
expecting = ['A'] # shouldn't match overall root, just (A B)
self.failUnlessEqual(expecting, elements)
示例5: testVisitPatternMultiple
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testVisitPatternMultiple(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C (A B) (D (A B)))")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'{}@{}[{}]'.format(node, parent or 'nil', childIndex)
)
wiz.visit(tree, '(A B)', visitor)
expecting = ['[email protected][2]', '[email protected][0]']
self.assertEqual(expecting, elements)
示例6: testVisitPatternMultiple
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testVisitPatternMultiple(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C (A B) (D (A B)))")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'%[email protected]%s[%d]'
% (node, ['nil', parent][parent is not None], childIndex)
)
wiz.visit(tree, '(A B)', visitor)
expecting = ['[email protected][2]', '[email protected][0]']
self.failUnlessEqual(expecting, elements)
示例7: testRepeatsVisitWithNullParentAndContext
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testRepeatsVisitWithNullParentAndContext(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B (A C B) B D D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'%[email protected]%s[%d]'
% (node, ['nil', parent][parent is not None], childIndex)
)
wiz.visit(tree, wiz.getTokenType("A"), visitor)
expecting = ['[email protected][0]', '[email protected][1]']
self.failUnlessEqual(expecting, elements)
示例8: testRepeatsVisitWithNullParentAndContext
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testRepeatsVisitWithNullParentAndContext(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B (A C B) B D D)")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'{}@{}[{}]'.format(
node, parent or 'nil', childIndex)
)
wiz.visit(tree, wiz.getTokenType("A"), visitor)
expecting = ['[email protected][0]', '[email protected][1]']
self.assertEqual(expecting, elements)
示例9: testVisitPatternMultipleWithLabels
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testVisitPatternMultipleWithLabels(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C (A[foo] B[bar]) (D (A[big] B[dog])))")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'%[email protected]%s[%d]%s&%s'
% (node,
['nil', parent][parent is not None],
childIndex,
labels['a'],
labels['b'],
)
)
wiz.visit(tree, '(%a:A %b:B)', visitor)
expecting = ['[email protected][2]foo&bar', '[email protected][0]big&dog']
self.failUnlessEqual(expecting, elements)
示例10: testVisitPatternMultipleWithLabels
# 需要导入模块: from antlr3.treewizard import TreeWizard [as 别名]
# 或者: from antlr3.treewizard.TreeWizard import visit [as 别名]
def testVisitPatternMultipleWithLabels(self):
wiz = TreeWizard(self.adaptor, self.tokens)
tree = wiz.create("(A B C (A[foo] B[bar]) (D (A[big] B[dog])))")
elements = []
def visitor(node, parent, childIndex, labels):
elements.append(
'{}@{}[{}]{}&{}'.format(
node,
parent or 'nil',
childIndex,
labels['a'],
labels['b'],
)
)
wiz.visit(tree, '(%a:A %b:B)', visitor)
expecting = ['[email protected][2]foo&bar', '[email protected][0]big&dog']
self.assertEqual(expecting, elements)