Style touch-ups on Python3 XPath implementation
This commit is contained in:
parent
ff1283affb
commit
4c2f091e8c
|
@ -218,23 +218,22 @@ class XPath(object):
|
||||||
elif wordToken.type in [XPathLexer.TOKEN_REF, XPathLexer.STRING]:
|
elif wordToken.type in [XPathLexer.TOKEN_REF, XPathLexer.STRING]:
|
||||||
tsource = self.parser.getTokenStream().tokenSource
|
tsource = self.parser.getTokenStream().tokenSource
|
||||||
|
|
||||||
ttype = litType = None
|
ttype = -1
|
||||||
if wordToken.type == XPathLexer.TOKEN_REF:
|
if wordToken.type == XPathLexer.TOKEN_REF:
|
||||||
ttype = (tsource.ruleNames.index(word) + 1) if word in tsource.ruleNames else None
|
if word in tsource.ruleNames:
|
||||||
|
ttype = tsource.ruleNames.index(word) + 1
|
||||||
else:
|
else:
|
||||||
litType = tsource.literalNames.index(word) if word in tsource.literalNames else None
|
if word in tsource.literalNames:
|
||||||
|
ttype = tsource.literalNames.index(word)
|
||||||
|
|
||||||
# Decide which one is it
|
if ttype == -1:
|
||||||
ttype = ttype or litType
|
|
||||||
|
|
||||||
if not ttype:
|
|
||||||
raise Exception("%s at index %d isn't a valid token name" % (word, wordToken.tokenIndex))
|
raise Exception("%s at index %d isn't a valid token name" % (word, wordToken.tokenIndex))
|
||||||
return XPathTokenAnywhereElement(word, ttype) if anywhere else XPathTokenElement(word, ttype)
|
return XPathTokenAnywhereElement(word, ttype) if anywhere else XPathTokenElement(word, ttype)
|
||||||
|
|
||||||
else:
|
else:
|
||||||
ruleIndex = self.parser.ruleNames.index(word) if word in self.parser.ruleNames else None
|
ruleIndex = self.parser.ruleNames.index(word) if word in self.parser.ruleNames else -1
|
||||||
|
|
||||||
if not ruleIndex:
|
if ruleIndex == -1:
|
||||||
raise Exception("%s at index %d isn't a valid rule name" % (word, wordToken.tokenIndex))
|
raise Exception("%s at index %d isn't a valid rule name" % (word, wordToken.tokenIndex))
|
||||||
return XPathRuleAnywhereElement(word, ruleIndex) if anywhere else XPathRuleElement(word, ruleIndex)
|
return XPathRuleAnywhereElement(word, ruleIndex) if anywhere else XPathRuleElement(word, ruleIndex)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue