ReactOS  0.4.15-dev-506-ga3ec01c
hlsl.tab.h
Go to the documentation of this file.
1 /* A Bison parser, made by GNU Bison 3.4.1. */
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_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED
38 # define YY_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED
39 /* Debug traces. */
40 #ifndef YYDEBUG
41 # define YYDEBUG 0
42 #endif
43 #if YYDEBUG
44 extern int hlsl_debug;
45 #endif
46 
47 /* Token type. */
48 #ifndef YYTOKENTYPE
49 # define YYTOKENTYPE
51  {
53  KW_BREAK = 259,
54  KW_BUFFER = 260,
55  KW_CBUFFER = 261,
57  KW_COMPILE = 263,
58  KW_CONST = 264,
59  KW_CONTINUE = 265,
62  KW_DISCARD = 268,
63  KW_DO = 269,
64  KW_DOUBLE = 270,
65  KW_ELSE = 271,
66  KW_EXTERN = 272,
67  KW_FALSE = 273,
68  KW_FOR = 274,
71  KW_IF = 277,
72  KW_IN = 278,
73  KW_INLINE = 279,
74  KW_INOUT = 280,
75  KW_MATRIX = 281,
76  KW_NAMESPACE = 282,
78  KW_OUT = 284,
79  KW_PASS = 285,
81  KW_PRECISE = 287,
84  KW_RETURN = 290,
85  KW_REGISTER = 291,
86  KW_ROW_MAJOR = 292,
87  KW_SAMPLER = 293,
88  KW_SAMPLER1D = 294,
89  KW_SAMPLER2D = 295,
90  KW_SAMPLER3D = 296,
94  KW_SHARED = 300,
97  KW_STATIC = 303,
98  KW_STRING = 304,
99  KW_STRUCT = 305,
100  KW_SWITCH = 306,
101  KW_TBUFFER = 307,
104  KW_TEXTURE = 310,
114  KW_TRUE = 320,
115  KW_TYPEDEF = 321,
116  KW_UNIFORM = 322,
117  KW_VECTOR = 323,
119  KW_VOID = 325,
120  KW_VOLATILE = 326,
121  KW_WHILE = 327,
122  OP_INC = 328,
123  OP_DEC = 329,
124  OP_AND = 330,
125  OP_OR = 331,
126  OP_EQ = 332,
131  OP_ELLIPSIS = 337,
132  OP_LE = 338,
133  OP_GE = 339,
134  OP_NE = 340,
141  OP_ORASSIGN = 347,
143  OP_UNKNOWN1 = 349,
144  OP_UNKNOWN2 = 350,
145  OP_UNKNOWN3 = 351,
146  OP_UNKNOWN4 = 352,
147  PRE_LINE = 353,
151  STRING = 357,
152  C_FLOAT = 358,
153  C_INTEGER = 359
154  };
155 #endif
156 
157 /* Value type. */
158 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
159 union YYSTYPE
160 {
161 #line 890 "hlsl.y"
162 
163  struct hlsl_type *type;
164  INT intval;
165  FLOAT floatval;
166  BOOL boolval;
167  char *name;
169  struct hlsl_ir_node *instr;
170  struct list *list;
171  struct parse_function function;
172  struct parse_parameter parameter;
175  struct parse_if_body if_body;
180 
181 #line 182 "hlsl.tab.h"
182 
183 };
184 typedef union YYSTYPE YYSTYPE;
185 # define YYSTYPE_IS_TRIVIAL 1
186 # define YYSTYPE_IS_DECLARED 1
187 #endif
188 
189 /* Location type. */
190 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
191 typedef struct YYLTYPE YYLTYPE;
192 struct YYLTYPE
193 {
194  int first_line;
195  int first_column;
196  int last_line;
197  int last_column;
198 };
199 # define YYLTYPE_IS_DECLARED 1
200 # define YYLTYPE_IS_TRIVIAL 1
201 #endif
202 
203 
204 extern YYSTYPE hlsl_lval;
205 extern YYLTYPE hlsl_lloc;
206 int hlsl_parse (void);
207 
208 #endif /* !YY_HLSL_E_REACTOSSYNC_GCC_DLL_DIRECTX_WINE_D3DCOMPILER_43_HLSL_TAB_H_INCLUDED */
int first_column
Definition: hlsl.tab.c:1124
char * name
Definition: hlsl.tab.c:1096
struct parse_variable_def * variable_def
Definition: hlsl.tab.c:1103
struct reg_reservation * reg_reservation
Definition: hlsl.tab.c:1107
struct parse_initializer initializer
Definition: hlsl.tab.c:1102
int last_column
Definition: hlsl.tab.c:1126
YYSTYPE hlsl_lval
int last_line
Definition: hlsl.tab.c:1125
struct parse_if_body if_body
Definition: hlsl.tab.c:1104
int32_t INT
Definition: typedefs.h:57
struct hlsl_type * type
Definition: hlsl.tab.c:1092
enum parse_assign_op assign_op
Definition: hlsl.tab.c:1106
unsigned int BOOL
Definition: ntddk_ex.h:94
struct parse_function function
Definition: hlsl.tab.c:1100
int hlsl_parse(void)
Definition: hlsl.tab.h:71
struct parse_parameter parameter
Definition: hlsl.tab.c:1101
yytokentype
int first_line
Definition: hlsl.tab.c:1123
unsigned long DWORD
Definition: ntddk_ex.h:95
std::wstring STRING
Definition: fontsub.cpp:33
FLOAT floatval
Definition: hlsl.tab.c:1094
INT intval
Definition: hlsl.tab.c:1093
Definition: _list.h:228
struct hlsl_ir_node * instr
Definition: hlsl.tab.c:1098
YYLTYPE hlsl_lloc
enum parse_unary_op unary_op
Definition: hlsl.tab.c:1105
DWORD modifiers
Definition: hlsl.tab.c:1097
struct list * list
Definition: hlsl.tab.c:1099
struct parse_colon_attribute colon_attribute
Definition: hlsl.tab.c:1108
float FLOAT
Definition: typedefs.h:68
BOOL boolval
Definition: hlsl.tab.c:1095
Definition: hlsl.tab.h:63
Definition: hlsl.tab.h:72