Exemple #1
0
 def getNodeText(cls, t:Tree, ruleNames:list=None, recog:Parser=None):
     if recog is not None:
         ruleNames = recog.ruleNames
     if ruleNames is not None:
         if isinstance(t, RuleNode):
             if t.getAltNumber()!=0: # should use ATN.INVALID_ALT_NUMBER but won't compile
                 return ruleNames[t.getRuleIndex()]+":"+str(t.getAltNumber())
             return ruleNames[t.getRuleIndex()]
         elif isinstance( t, ErrorNode):
             return str(t)
         elif isinstance(t, TerminalNode):
             if t.symbol is not None:
                 return t.symbol.text
     # no recog for rule names
     payload = t.getPayload()
     if isinstance(payload, Token ):
         return payload.text
     return str(t.getPayload())
Exemple #2
0
 def getNodeText(cls, t:Tree, ruleNames:list=None, recog:Parser=None):
     if recog is not None:
         ruleNames = recog.ruleNames
     if ruleNames is not None:
         if isinstance(t, RuleNode):
             if t.getAltNumber()!=0: # should use ATN.INVALID_ALT_NUMBER but won't compile
                 return ruleNames[t.getRuleIndex()]+":"+str(t.getAltNumber())
             return ruleNames[t.getRuleIndex()]
         elif isinstance( t, ErrorNode):
             return str(t)
         elif isinstance(t, TerminalNode):
             if t.symbol is not None:
                 return t.symbol.text
     # no recog for rule names
     payload = t.getPayload()
     if isinstance(payload, Token ):
         return payload.text
     return str(t.getPayload())