def name()

in src/google/appengine/api/search/ExpressionParser.py [0:0]


    def name(self, ):

        retval = self.name_return()
        retval.start = self.input.LT(1)

        root_0 = None

        t = None
        NAME42 = None
        char_literal43 = None
        NAME44 = None

        t_tree = None
        NAME42_tree = None
        char_literal43_tree = None
        NAME44_tree = None
        stream_GEO = RewriteRuleTokenStream(self._adaptor, "token GEO")
        stream_DATE = RewriteRuleTokenStream(self._adaptor, "token DATE")
        stream_NUMBER = RewriteRuleTokenStream(self._adaptor, "token NUMBER")
        stream_GEOPOINT = RewriteRuleTokenStream(self._adaptor, "token GEOPOINT")
        stream_TEXT = RewriteRuleTokenStream(self._adaptor, "token TEXT")
        stream_HTML = RewriteRuleTokenStream(self._adaptor, "token HTML")
        stream_ATOM = RewriteRuleTokenStream(self._adaptor, "token ATOM")

        try:
            try:

                alt12 = 8
                LA12 = self.input.LA(1)
                if LA12 == NAME:
                    alt12 = 1
                elif LA12 == TEXT:
                    alt12 = 2
                elif LA12 == HTML:
                    alt12 = 3
                elif LA12 == ATOM:
                    alt12 = 4
                elif LA12 == DATE:
                    alt12 = 5
                elif LA12 == NUMBER:
                    alt12 = 6
                elif LA12 == GEO:
                    alt12 = 7
                elif LA12 == GEOPOINT:
                    alt12 = 8
                else:
                    nvae = NoViableAltException("", 12, 0, self.input)

                    raise nvae

                if alt12 == 1:

                    pass
                    root_0 = self._adaptor.nil()

                    NAME42=self.match(self.input, NAME, self.FOLLOW_NAME_in_name469)

                    NAME42_tree = self._adaptor.createWithPayload(NAME42)
                    self._adaptor.addChild(root_0, NAME42_tree)


                    while True:
                        alt11 = 2
                        LA11_0 = self.input.LA(1)

                        if (LA11_0 == 60) :
                            alt11 = 1


                        if alt11 == 1:

                            pass
                            char_literal43=self.match(self.input, 60, self.FOLLOW_60_in_name472)

                            char_literal43_tree = self._adaptor.createWithPayload(char_literal43)
                            root_0 = self._adaptor.becomeRoot(char_literal43_tree, root_0)

                            NAME44=self.match(self.input, NAME, self.FOLLOW_NAME_in_name475)

                            NAME44_tree = self._adaptor.createWithPayload(NAME44)
                            self._adaptor.addChild(root_0, NAME44_tree)



                        else:
                            break




                elif alt12 == 2:

                    pass
                    t=self.match(self.input, TEXT, self.FOLLOW_TEXT_in_name491)
                    stream_TEXT.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 3:

                    pass
                    t=self.match(self.input, HTML, self.FOLLOW_HTML_in_name504)
                    stream_HTML.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 4:

                    pass
                    t=self.match(self.input, ATOM, self.FOLLOW_ATOM_in_name517)
                    stream_ATOM.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 5:

                    pass
                    t=self.match(self.input, DATE, self.FOLLOW_DATE_in_name530)
                    stream_DATE.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 6:

                    pass
                    t=self.match(self.input, NUMBER, self.FOLLOW_NUMBER_in_name543)
                    stream_NUMBER.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 7:

                    pass
                    t=self.match(self.input, GEO, self.FOLLOW_GEO_in_name556)
                    stream_GEO.add(t)








                    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, self._adaptor.create(NAME, t))



                    retval.tree = root_0


                elif alt12 == 8:

                    pass
                    t=self.match(self.input, GEOPOINT, self.FOLLOW_GEOPOINT_in_name569)
                    stream_GEOPOINT.add(t)








                    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, self._adaptor.create(NAME, t))



                    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 e:
              self.reportError(e)
              raise e
        finally:

            pass

        return retval