as3: improved protected handling, xml support. added 'arguments' keyword
[swftools.git] / lib / as3 / parser.tab.h
1
2 /* A Bison parser, made by GNU Bison 2.4.  */
3
4 /* Skeleton interface for Bison's Yacc-like parsers in C
5    
6       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
7    Free Software Foundation, Inc.
8    
9    This program is free software: you can redistribute it and/or modify
10    it under the terms of the GNU General Public License as published by
11    the Free Software Foundation, either version 3 of the License, or
12    (at your option) any later version.
13    
14    This program is distributed in the hope that it will be useful,
15    but WITHOUT ANY WARRANTY; without even the implied warranty of
16    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17    GNU General Public License for more details.
18    
19    You should have received a copy of the GNU General Public License
20    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
21
22 /* As a special exception, you may create a larger work that contains
23    part or all of the Bison parser skeleton and distribute that work
24    under terms of your choice, so long as that work isn't itself a
25    parser generator using the skeleton or a modified version thereof
26    as a parser skeleton.  Alternatively, if you modify or redistribute
27    the parser skeleton itself, you may (at your option) remove this
28    special exception, which will cause the skeleton and the resulting
29    Bison output files to be licensed under the GNU General Public
30    License without this special exception.
31    
32    This special exception was added by the Free Software Foundation in
33    version 2.2 of Bison.  */
34
35
36 /* Tokens.  */
37 #ifndef YYTOKENTYPE
38 # define YYTOKENTYPE
39    /* Put the tokens into the symbol table, so that GDB and other debuggers
40       know about them.  */
41    enum yytokentype {
42      T_IDENTIFIER = 258,
43      T_NAMESPACE = 259,
44      T_STRING = 260,
45      T_REGEXP = 261,
46      T_EMPTY = 262,
47      T_INT = 263,
48      T_UINT = 264,
49      T_FLOAT = 265,
50      T_FOR = 266,
51      T_WHILE = 267,
52      T_DO = 268,
53      T_SWITCH = 269,
54      KW_IMPLEMENTS = 270,
55      KW_NAMESPACE = 271,
56      KW_PACKAGE = 272,
57      KW_PROTECTED = 273,
58      KW_ARGUMENTS = 274,
59      KW_PUBLIC = 275,
60      KW_PRIVATE = 276,
61      KW_USE = 277,
62      KW_INTERNAL = 278,
63      KW_NEW = 279,
64      KW_NATIVE = 280,
65      KW_FUNCTION = 281,
66      KW_FINALLY = 282,
67      KW_UNDEFINED = 283,
68      KW_NAN = 284,
69      KW_CONTINUE = 285,
70      KW_CLASS = 286,
71      KW_CONST = 287,
72      KW_CATCH = 288,
73      KW_CASE = 289,
74      KW_SET = 290,
75      KW_VOID = 291,
76      KW_THROW = 292,
77      KW_STATIC = 293,
78      KW_WITH = 294,
79      KW_INSTANCEOF = 295,
80      KW_IMPORT = 296,
81      KW_RETURN = 297,
82      KW_TYPEOF = 298,
83      KW_INTERFACE = 299,
84      KW_NULL = 300,
85      KW_VAR = 301,
86      KW_DYNAMIC = 302,
87      KW_OVERRIDE = 303,
88      KW_FINAL = 304,
89      KW_EACH = 305,
90      KW_GET = 306,
91      KW_TRY = 307,
92      KW_SUPER = 308,
93      KW_EXTENDS = 309,
94      KW_FALSE = 310,
95      KW_TRUE = 311,
96      KW_BOOLEAN = 312,
97      KW_UINT = 313,
98      KW_INT = 314,
99      KW_NUMBER = 315,
100      KW_STRING = 316,
101      KW_DEFAULT = 317,
102      KW_DELETE = 318,
103      KW_IF = 319,
104      KW_ELSE = 320,
105      KW_BREAK = 321,
106      KW_IS = 322,
107      KW_IN = 323,
108      KW_AS = 324,
109      T_DICTSTART = 325,
110      T_EQEQ = 326,
111      T_EQEQEQ = 327,
112      T_NE = 328,
113      T_NEE = 329,
114      T_LE = 330,
115      T_GE = 331,
116      T_ORBY = 332,
117      T_DIVBY = 333,
118      T_MODBY = 334,
119      T_MULBY = 335,
120      T_ANDBY = 336,
121      T_PLUSBY = 337,
122      T_MINUSBY = 338,
123      T_XORBY = 339,
124      T_SHRBY = 340,
125      T_SHLBY = 341,
126      T_USHRBY = 342,
127      T_OROR = 343,
128      T_ANDAND = 344,
129      T_COLONCOLON = 345,
130      T_MINUSMINUS = 346,
131      T_PLUSPLUS = 347,
132      T_DOTDOT = 348,
133      T_DOTDOTDOT = 349,
134      T_SHL = 350,
135      T_USHR = 351,
136      T_SHR = 352,
137      prec_none = 353,
138      below_semicolon = 354,
139      below_assignment = 355,
140      below_lt = 356,
141      below_minus = 357,
142      minusminus_prefix = 358,
143      plusplus_prefix = 359,
144      below_curly = 360,
145      new2 = 361,
146      above_identifier = 362,
147      below_else = 363,
148      above_function = 364
149    };
150 #endif
151
152
153
154 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
155 typedef union 
156 /* Line 1685 of skeleton.m4  */
157 #line 47 "parser.y"
158 tokenunion
159 {
160
161 /* Line 1685 of skeleton.m4  */
162 #line 47 "parser.y"
163
164     enum yytokentype token;
165
166     classinfo_t*classinfo;
167     classinfo_list_t*classinfo_list;
168     slotinfo_t*slotinfo;
169     slotinfo_list_t*slotinfo_list;
170
171     int number_int;
172     unsigned int number_uint;
173     double number_float;
174     code_t*code;
175     typedcode_t value;
176     //typedcode_list_t*value_list;
177     codeandnumber_t value_list;
178     param_t* param;
179     params_t params;
180     string_t str;
181     char*id;
182     constant_t*constant;
183     for_start_t for_start;
184     abc_exception_t *exception;
185     regexp_t regexp;
186     modifiers_t flags;
187     namespace_decl_t* namespace_decl;
188     node_t*node;
189     struct {
190         abc_exception_list_t *l;
191         code_t*finally;
192     } catch_list;
193
194
195
196 /* Line 1685 of skeleton.m4  */
197 #line 198 "parser.tab.h"
198 } YYSTYPE;
199 # define YYSTYPE_IS_TRIVIAL 1
200 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
201 # define YYSTYPE_IS_DECLARED 1
202 #endif
203
204 extern YYSTYPE a3_lval;
205
206