File indexing completed on 2024-04-28 15:54:28

0001 /* A Bison parser, made by GNU Bison 2.5.  */
0002 
0003 /* Bison interface for Yacc-like parsers in C
0004    
0005       Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc.
0006    
0007    This program is free software: you can redistribute it and/or modify
0008    it under the terms of the GNU General Public License as published by
0009    the Free Software Foundation, either version 3 of the License, or
0010    (at your option) any later version.
0011    
0012    This program is distributed in the hope that it will be useful,
0013    but WITHOUT ANY WARRANTY; without even the implied warranty of
0014    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0015    GNU General Public License for more details.
0016    
0017    You should have received a copy of the GNU General Public License
0018    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
0019 
0020 /* As a special exception, you may create a larger work that contains
0021    part or all of the Bison parser skeleton and distribute that work
0022    under terms of your choice, so long as that work isn't itself a
0023    parser generator using the skeleton or a modified version thereof
0024    as a parser skeleton.  Alternatively, if you modify or redistribute
0025    the parser skeleton itself, you may (at your option) remove this
0026    special exception, which will cause the skeleton and the resulting
0027    Bison output files to be licensed under the GNU General Public
0028    License without this special exception.
0029    
0030    This special exception was added by the Free Software Foundation in
0031    version 2.2 of Bison.  */
0032 
0033 
0034 /* Tokens.  */
0035 #ifndef YYTOKENTYPE
0036 # define YYTOKENTYPE
0037    /* Put the tokens into the symbol table, so that GDB and other debuggers
0038       know about them.  */
0039    enum yytokentype {
0040      T_IDENTIFIER = 258,
0041      T_ARROW = 259,
0042      T_TERMINAL = 260,
0043      T_CODE = 261,
0044      T_STRING = 262,
0045      T_UNQUOTED_STRING = 263,
0046      T_NUMBER = 264,
0047      T_TOKEN_DECLARATION = 265,
0048      T_TOKEN_STREAM_DECLARATION = 266,
0049      T_NAMESPACE_DECLARATION = 267,
0050      T_PARSERCLASS_DECLARATION = 268,
0051      T_LEXERCLASS_DECLARATION = 269,
0052      T_PUBLIC = 270,
0053      T_PRIVATE = 271,
0054      T_PROTECTED = 272,
0055      T_DECLARATION = 273,
0056      T_BITS = 274,
0057      T_CONSTRUCTOR = 275,
0058      T_DESTRUCTOR = 276,
0059      T_TRY_RECOVER = 277,
0060      T_TRY_ROLLBACK = 278,
0061      T_CATCH = 279,
0062      T_RULE_ARGUMENTS = 280,
0063      T_MEMBER = 281,
0064      T_TEMPORARY = 282,
0065      T_ARGUMENT = 283,
0066      T_EXPORT_MACRO = 284,
0067      T_NODE = 285,
0068      T_NODE_SEQUENCE = 286,
0069      T_TOKEN = 287,
0070      T_VARIABLE = 288,
0071      T_EXPORT_MACRO_HEADER = 289,
0072      T_AST_DECLARATION = 290,
0073      T_PARSER_DECLARATION_HEADER = 291,
0074      T_PARSER_BITS_HEADER = 292,
0075      T_AST_HEADER = 293,
0076      T_LEXER_DECLARATION_HEADER = 294,
0077      T_LEXER_BITS_HEADER = 295,
0078      T_PARSER_BASE = 296,
0079      T_AST_BASE = 297,
0080      T_LEXER_BASE = 298,
0081      T_BIN = 299,
0082      T_PRE = 300,
0083      T_POST = 301,
0084      T_TERN = 302,
0085      T_LOPR = 303,
0086      T_ROPR = 304,
0087      T_LEFT_ASSOC = 305,
0088      T_RIGHT_ASSOC = 306,
0089      T_IS_LEFT_ASSOC = 307,
0090      T_IS_RIGHT_ASSOC = 308,
0091      T_PRIORITY = 309,
0092      T_PAREN = 310,
0093      T_INLINE = 311,
0094      T_LEXER = 312,
0095      T_INPUT_STREAM = 313,
0096      T_INPUT_ENCODING = 314,
0097      T_TABLE_LEXER = 315,
0098      T_SEQUENCE_LEXER = 316,
0099      T_NAMED_REGEXP = 317,
0100      T_CONTINUE = 318,
0101      T_RANGE = 319,
0102      T_FAIL = 320,
0103      T_LOOKAHEAD = 321,
0104      T_BARRIER = 322,
0105      T_ENTER_RULE_SET = 323,
0106      T_LEAVE_RULE_SET = 324
0107    };
0108 #endif
0109 
0110 
0111 
0112 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
0113 typedef union YYSTYPE
0114 {
0115 
0116 /* Line 2068 of yacc.c  */
0117 #line 49 "/home/jonathan/gitKDE/kdevelop-pg-qt/kdev-pg/kdev-pg-parser.yy"
0118 
0119     KDevPG::Model::Node *item;
0120     char* str;
0121     KDevPG::Model::VariableDeclarationItem::DeclarationType declarationType;
0122     KDevPG::Model::VariableDeclarationItem::StorageType     storageType;
0123     KDevPG::Model::VariableDeclarationItem::VariableType    variableType;
0124     KDevPG::Model::Operator                                *operatorInformation;
0125     KDevPG::GNFA                                           *nfa;
0126 
0127 
0128 
0129 /* Line 2068 of yacc.c  */
0130 #line 131 "/home/jonathan/gitKDE/kdevelop-pg-qt/build/kdev-pg/kdev-pg-parser.hh"
0131 } YYSTYPE;
0132 # define YYSTYPE_IS_TRIVIAL 1
0133 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
0134 # define YYSTYPE_IS_DECLARED 1
0135 #endif
0136 
0137 extern YYSTYPE yylval;
0138 
0139