in src/google/appengine/api/search/QueryParser.py [0:0]
def query(self, ):
retval = self.query_return()
retval.start = self.input.LT(1)
root_0 = None
WS1 = None
EOF2 = None
WS3 = None
WS5 = None
EOF6 = None
expression4 = None
WS1_tree = None
EOF2_tree = None
WS3_tree = None
WS5_tree = None
EOF6_tree = None
stream_WS = RewriteRuleTokenStream(self._adaptor, "token WS")
stream_EOF = RewriteRuleTokenStream(self._adaptor, "token EOF")
stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression")
try:
try:
alt4 = 2
alt4 = self.dfa4.predict(self.input)
if alt4 == 1:
pass
while True:
alt1 = 2
LA1_0 = self.input.LA(1)
if (LA1_0 == WS) :
alt1 = 1
if alt1 == 1:
pass
WS1=self.match(self.input, WS, self.FOLLOW_WS_in_query122)
stream_WS.add(WS1)
else:
break
EOF2=self.match(self.input, EOF, self.FOLLOW_EOF_in_query125)
stream_EOF.add(EOF2)
retval.tree = root_0
if retval is not None:
stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", retval.tree)
else:
stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None)
root_0 = self._adaptor.nil()
root_1 = self._adaptor.nil()
root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(EMPTY, "EMPTY"), root_1)
self._adaptor.addChild(root_0, root_1)
retval.tree = root_0
elif alt4 == 2:
pass
while True:
alt2 = 2
LA2_0 = self.input.LA(1)
if (LA2_0 == WS) :
alt2 = 1
if alt2 == 1:
pass
WS3=self.match(self.input, WS, self.FOLLOW_WS_in_query154)
stream_WS.add(WS3)
else:
break
self._state.following.append(self.FOLLOW_expression_in_query157)
expression4 = self.expression()
self._state.following.pop()
stream_expression.add(expression4.tree)
while True:
alt3 = 2
LA3_0 = self.input.LA(1)
if (LA3_0 == WS) :
alt3 = 1
if alt3 == 1:
pass
WS5=self.match(self.input, WS, self.FOLLOW_WS_in_query159)
stream_WS.add(WS5)
else:
break
EOF6=self.match(self.input, EOF, self.FOLLOW_EOF_in_query162)
stream_EOF.add(EOF6)
retval.tree = root_0
if retval is not None:
stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", retval.tree)
else:
stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None)
root_0 = self._adaptor.nil()
self._adaptor.addChild(root_0, stream_expression.nextTree())
retval.tree = root_0
retval.stop = self.input.LT(-1)
retval.tree = self._adaptor.rulePostProcessing(root_0)
self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop)
except RecognitionException as re:
self.reportError(re)
self.recover(self.input, re)
retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re)
finally:
pass
return retval