1 /* A Bison parser, made by GNU Bison 3.5.  */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation,
6    Inc.
7 
8    This program is free software: you can redistribute it and/or modify
9    it under the terms of the GNU General Public License as published by
10    the Free Software Foundation, either version 3 of the License, or
11    (at your option) any later version.
12 
13    This program is distributed in the hope that it will be useful,
14    but WITHOUT ANY WARRANTY; without even the implied warranty of
15    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16    GNU General Public License for more details.
17 
18    You should have received a copy of the GNU General Public License
19    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
20 
21 /* As a special exception, you may create a larger work that contains
22    part or all of the Bison parser skeleton and distribute that work
23    under terms of your choice, so long as that work isn't itself a
24    parser generator using the skeleton or a modified version thereof
25    as a parser skeleton.  Alternatively, if you modify or redistribute
26    the parser skeleton itself, you may (at your option) remove this
27    special exception, which will cause the skeleton and the resulting
28    Bison output files to be licensed under the GNU General Public
29    License without this special exception.
30 
31    This special exception was added by the Free Software Foundation in
32    version 2.2 of Bison.  */
33 
34 /* Undocumented macros, especially those whose name start with YY_,
35    are private implementation details.  Do not rely on them.  */
36 
37 #ifndef YY_GLCPP_PARSER_SRC_COMPILER_GLSL_GLCPP_GLCPP_PARSE_H_INCLUDED
38 # define YY_GLCPP_PARSER_SRC_COMPILER_GLSL_GLCPP_GLCPP_PARSE_H_INCLUDED
39 /* Debug traces.  */
40 #ifndef YYDEBUG
41 # define YYDEBUG 1
42 #endif
43 #if YYDEBUG
44 extern int glcpp_parser_debug;
45 #endif
46 
47 /* Token type.  */
48 #ifndef YYTOKENTYPE
49 # define YYTOKENTYPE
50   enum yytokentype
51   {
52     DEFINED = 258,
53     ELIF_EXPANDED = 259,
54     HASH_TOKEN = 260,
55     DEFINE_TOKEN = 261,
56     FUNC_IDENTIFIER = 262,
57     OBJ_IDENTIFIER = 263,
58     ELIF = 264,
59     ELSE = 265,
60     ENDIF = 266,
61     ERROR_TOKEN = 267,
62     IF = 268,
63     IFDEF = 269,
64     IFNDEF = 270,
65     LINE = 271,
66     PRAGMA = 272,
67     UNDEF = 273,
68     VERSION_TOKEN = 274,
69     GARBAGE = 275,
70     IDENTIFIER = 276,
71     IF_EXPANDED = 277,
72     INTEGER = 278,
73     INTEGER_STRING = 279,
74     LINE_EXPANDED = 280,
75     NEWLINE = 281,
76     OTHER = 282,
77     PLACEHOLDER = 283,
78     SPACE = 284,
79     PLUS_PLUS = 285,
80     MINUS_MINUS = 286,
81     PATH = 287,
82     INCLUDE = 288,
83     PASTE = 289,
84     OR = 290,
85     AND = 291,
86     EQUAL = 292,
87     NOT_EQUAL = 293,
88     LESS_OR_EQUAL = 294,
89     GREATER_OR_EQUAL = 295,
90     LEFT_SHIFT = 296,
91     RIGHT_SHIFT = 297,
92     UNARY = 298
93   };
94 #endif
95 
96 /* Value type.  */
97 
98 /* Location type.  */
99 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
100 typedef struct YYLTYPE YYLTYPE;
101 struct YYLTYPE
102 {
103   int first_line;
104   int first_column;
105   int last_line;
106   int last_column;
107 };
108 # define YYLTYPE_IS_DECLARED 1
109 # define YYLTYPE_IS_TRIVIAL 1
110 #endif
111 
112 
113 
114 int glcpp_parser_parse (glcpp_parser_t *parser);
115 
116 #endif /* !YY_GLCPP_PARSER_SRC_COMPILER_GLSL_GLCPP_GLCPP_PARSE_H_INCLUDED  */
117