source: trunk/src/generated/lolfx-parser.h @ 2506

Last change on this file since 2506 was 2506, checked in by sam, 7 years ago

base: start removing occurrences of NULL on our long journey to nullptr.

  • Property svn:keywords set to Id
File size: 18.7 KB
Line 
1/* A Bison parser, made by GNU Bison 2.5.  */
2
3/* Skeleton interface for Bison LALR(1) parsers in C++
4   
5      Copyright (C) 2002-2011 Free Software Foundation, Inc.
6   
7   This program is free software: you can redistribute it and/or modify
8   it under the terms of the GNU General Public License as published by
9   the Free Software Foundation, either version 3 of the License, or
10   (at your option) any later version.
11   
12   This program is distributed in the hope that it will be useful,
13   but WITHOUT ANY WARRANTY; without even the implied warranty of
14   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15   GNU General Public License for more details.
16   
17   You should have received a copy of the GNU General Public License
18   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19
20/* As a special exception, you may create a larger work that contains
21   part or all of the Bison parser skeleton and distribute that work
22   under terms of your choice, so long as that work isn't itself a
23   parser generator using the skeleton or a modified version thereof
24   as a parser skeleton.  Alternatively, if you modify or redistribute
25   the parser skeleton itself, you may (at your option) remove this
26   special exception, which will cause the skeleton and the resulting
27   Bison output files to be licensed under the GNU General Public
28   License without this special exception.
29   
30   This special exception was added by the Free Software Foundation in
31   version 2.2 of Bison.  */
32
33/* C++ LALR(1) parser skeleton written by Akim Demaille.  */
34
35#ifndef PARSER_HEADER_H
36# define PARSER_HEADER_H
37
38
39
40#include <string>
41#include <iostream>
42#include "stack.hh"
43#include "location.hh"
44
45/* Enabling traces.  */
46#ifndef YYDEBUG
47# define YYDEBUG 1
48#endif
49
50/* Enabling verbose error messages.  */
51#ifdef YYERROR_VERBOSE
52# undef YYERROR_VERBOSE
53# define YYERROR_VERBOSE 1
54#else
55# define YYERROR_VERBOSE 1
56#endif
57
58/* Enabling the token table.  */
59#ifndef YYTOKEN_TABLE
60# define YYTOKEN_TABLE 0
61#endif
62
63
64namespace lol {
65
66/* Line 35 of lalr1.cc  */
67#line 68 "generated/lolfx-parser.h"
68
69  /// A Bison parser.
70  class LolFxParser
71  {
72  public:
73    /// Symbol semantic values.
74#ifndef YYSTYPE
75    union semantic_type
76    {
77
78/* Line 35 of lalr1.cc  */
79#line 34 "gpu/lolfx-parser.y"
80
81    int ival;
82    unsigned uval;
83    float fval;
84    char *sval;
85
86
87
88/* Line 35 of lalr1.cc  */
89#line 90 "generated/lolfx-parser.h"
90    };
91#else
92    typedef YYSTYPE semantic_type;
93#endif
94    /// Symbol locations.
95    typedef location location_type;
96    /// Tokens.
97    struct token
98    {
99      /* Tokens.  */
100   enum yytokentype {
101     T_END = 0,
102     BOOLCONSTANT = 258,
103     INTCONSTANT = 259,
104     UINTCONSTANT = 260,
105     FLOATCONSTANT = 261,
106     FIELDSELECTION = 262,
107     IDENTIFIER = 263,
108     TYPENAME = 264,
109     GT_SUBROUTINE = 265,
110     GT_PATCH = 266,
111     GT_SAMPLE = 267,
112     GT_FLAT = 268,
113     GT_SMOOTH = 269,
114     GT_LAYOUT = 270,
115     GT_INVARIANT = 271,
116     GT_HIGHP = 272,
117     GT_MEDIUMP = 273,
118     GT_LOWP = 274,
119     GT_PRECISION = 275,
120     GT_ATTRIBUTE = 276,
121     GT_VARYING = 277,
122     GT_VEC2 = 278,
123     GT_VEC3 = 279,
124     GT_VEC4 = 280,
125     GT_BVEC2 = 281,
126     GT_BVEC3 = 282,
127     GT_BVEC4 = 283,
128     GT_DVEC2 = 284,
129     GT_DVEC3 = 285,
130     GT_DVEC4 = 286,
131     GT_IVEC2 = 287,
132     GT_IVEC3 = 288,
133     GT_IVEC4 = 289,
134     GT_UVEC2 = 290,
135     GT_UVEC3 = 291,
136     GT_UVEC4 = 292,
137     GT_MAT2 = 293,
138     GT_MAT2X2 = 294,
139     GT_MAT2X3 = 295,
140     GT_MAT2X4 = 296,
141     GT_MAT3 = 297,
142     GT_MAT3X2 = 298,
143     GT_MAT3X3 = 299,
144     GT_MAT3X4 = 300,
145     GT_MAT4 = 301,
146     GT_MAT4X2 = 302,
147     GT_MAT4X3 = 303,
148     GT_MAT4X4 = 304,
149     GT_DMAT2 = 305,
150     GT_DMAT2X2 = 306,
151     GT_DMAT2X3 = 307,
152     GT_DMAT2X4 = 308,
153     GT_DMAT3 = 309,
154     GT_DMAT3X2 = 310,
155     GT_DMAT3X3 = 311,
156     GT_DMAT3X4 = 312,
157     GT_DMAT4 = 313,
158     GT_DMAT4X2 = 314,
159     GT_DMAT4X3 = 315,
160     GT_DMAT4X4 = 316,
161     GT_SAMPLER1DSHADOW = 317,
162     GT_SAMPLER1DARRAY = 318,
163     GT_SAMPLER1DARRAYSHADOW = 319,
164     GT_SAMPLER2DSHADOW = 320,
165     GT_SAMPLER2DARRAY = 321,
166     GT_SAMPLER2DARRAYSHADOW = 322,
167     GT_SAMPLER2DRECT = 323,
168     GT_SAMPLER2DRECTSHADOW = 324,
169     GT_SAMPLER2DMS = 325,
170     GT_SAMPLER2DMSARRAY = 326,
171     GT_SAMPLERCUBESHADOW = 327,
172     GT_SAMPLERCUBEARRAY = 328,
173     GT_SAMPLERCUBEARRAYSHADOW = 329,
174     GT_SAMPLERBUFFER = 330,
175     GT_ISAMPLER1D = 331,
176     GT_ISAMPLER1DARRAY = 332,
177     GT_ISAMPLER2D = 333,
178     GT_ISAMPLER2DARRAY = 334,
179     GT_ISAMPLER2DRECT = 335,
180     GT_ISAMPLER2DMS = 336,
181     GT_ISAMPLER2DMSARRAY = 337,
182     GT_ISAMPLER3D = 338,
183     GT_ISAMPLERCUBE = 339,
184     GT_ISAMPLERCUBEARRAY = 340,
185     GT_ISAMPLERBUFFER = 341,
186     GT_USAMPLER1D = 342,
187     GT_USAMPLER1DARRAY = 343,
188     GT_USAMPLER2D = 344,
189     GT_USAMPLER2DARRAY = 345,
190     GT_USAMPLER2DRECT = 346,
191     GT_USAMPLER2DMS = 347,
192     GT_USAMPLER2DMSARRAY = 348,
193     GT_USAMPLER3D = 349,
194     GT_USAMPLERCUBE = 350,
195     GT_USAMPLERCUBEARRAY = 351,
196     GT_USAMPLERBUFFER = 352,
197     GHT_BOOL = 353,
198     GHT_BREAK = 354,
199     GHT_CASE = 355,
200     GHT_CENTROID = 356,
201     GHT_CONST = 357,
202     GHT_CONTINUE = 358,
203     GHT_DEFAULT = 359,
204     GHT_DISCARD = 360,
205     GHT_DO = 361,
206     GHT_DOUBLE = 362,
207     GHT_ELSE = 363,
208     GHT_FLOAT = 364,
209     GHT_FOR = 365,
210     GHT_IF = 366,
211     GHT_IN = 367,
212     GHT_INOUT = 368,
213     GHT_INT = 369,
214     GHT_NOPERSPECTIVE = 370,
215     GHT_OUT = 371,
216     GHT_RETURN = 372,
217     GHT_SAMPLER1D = 373,
218     GHT_SAMPLER2D = 374,
219     GHT_SAMPLER3D = 375,
220     GHT_SAMPLERCUBE = 376,
221     GHT_STRUCT = 377,
222     GHT_SWITCH = 378,
223     GHT_UINT = 379,
224     GHT_UNIFORM = 380,
225     GHT_VOID = 381,
226     GHT_WHILE = 382,
227     HGT_BOOL = 383,
228     HGT_BREAK = 384,
229     HGT_CASE = 385,
230     HGT_CENTROID = 386,
231     HGT_CONST = 387,
232     HGT_CONTINUE = 388,
233     HGT_DEFAULT = 389,
234     HGT_DISCARD = 390,
235     HGT_DO = 391,
236     HGT_DOUBLE = 392,
237     HGT_ELSE = 393,
238     HGT_FLOAT = 394,
239     HGT_FOR = 395,
240     HGT_IF = 396,
241     HGT_IN = 397,
242     HGT_INOUT = 398,
243     HGT_INT = 399,
244     HGT_NOPERSPECTIVE = 400,
245     HGT_OUT = 401,
246     HGT_RETURN = 402,
247     HGT_SAMPLER1D = 403,
248     HGT_SAMPLER2D = 404,
249     HGT_SAMPLER3D = 405,
250     HGT_SAMPLERCUBE = 406,
251     HGT_STRUCT = 407,
252     HGT_SWITCH = 408,
253     HGT_UINT = 409,
254     HGT_UNIFORM = 410,
255     HGT_VOID = 411,
256     HGT_WHILE = 412,
257     HT_APPENDSTRUCTUREDBUFFER = 413,
258     HT_ASM = 414,
259     HT_ASM_FRAGMENT = 415,
260     HT_BLENDSTATE = 416,
261     HT_BUFFER = 417,
262     HT_BYTEADDRESSBUFFER = 418,
263     HT_CBUFFER = 419,
264     HT_COLUMN_MAJOR = 420,
265     HT_COMPILE = 421,
266     HT_COMPILE_FRAGMENT = 422,
267     HT_COMPILESHADER = 423,
268     HT_COMPUTESHADER = 424,
269     HT_CONSUMESTRUCTUREDBUFFER = 425,
270     HT_DEPTHSTENCILSTATE = 426,
271     HT_DEPTHSTENCILVIEW = 427,
272     HT_DOMAINSHADER = 428,
273     HT_DWORD = 429,
274     HT_EXTERN = 430,
275     HT_FALSE = 431,
276     HT_FXGROUP = 432,
277     HT_GEOMETRYSHADER = 433,
278     HT_GROUPSHARED = 434,
279     HT_HALF = 435,
280     HT_HULLSHADER = 436,
281     HT_INLINE = 437,
282     HT_INPUTPATCH = 438,
283     HT_INTERFACE = 439,
284     HT_LINE = 440,
285     HT_LINEADJ = 441,
286     HT_LINEAR = 442,
287     HT_LINESTREAM = 443,
288     HT_MATRIX = 444,
289     HT_NAMESPACE = 445,
290     HT_NOINTERPOLATION = 446,
291     HT_NULL = 447,
292     HT_OUTPUTPATCH = 448,
293     HT_PACKOFFSET = 449,
294     HT_PASS = 450,
295     HT_PIXELFRAGMENT = 451,
296     HT_PIXELSHADER = 452,
297     HT_POINT = 453,
298     HT_POINTSTREAM = 454,
299     HT_PRECISE = 455,
300     HT_RASTERIZERSTATE = 456,
301     HT_RENDERTARGETVIEW = 457,
302     HT_REGISTER = 458,
303     HT_ROW_MAJOR = 459,
304     HT_RWBUFFER = 460,
305     HT_RWBYTEADDRESSBUFFER = 461,
306     HT_RWSTRUCTUREDBUFFER = 462,
307     HT_RWTEXTURE1D = 463,
308     HT_RWTEXTURE1DARRAY = 464,
309     HT_RWTEXTURE2D = 465,
310     HT_RWTEXTURE2DARRAY = 466,
311     HT_RWTEXTURE3D = 467,
312     HT_SAMPLER = 468,
313     HT_SAMPLER_STATE = 469,
314     HT_SAMPLERSTATE = 470,
315     HT_SAMPLERCOMPARISONSTATE = 471,
316     HT_SHARED = 472,
317     HT_SNORM = 473,
318     HT_STATEBLOCK = 474,
319     HT_STATEBLOCK_STATE = 475,
320     HT_STATIC = 476,
321     HT_STRING = 477,
322     HT_STRUCTUREDBUFFER = 478,
323     HT_TBUFFER = 479,
324     HT_TECHNIQUE = 480,
325     HT_TECHNIQUE10 = 481,
326     HT_TECHNIQUE11XZ = 482,
327     HT_TEXTURE = 483,
328     HT_TEXTURE1D = 484,
329     HT_TEXTURE1DARRAY = 485,
330     HT_TEXTURE2D = 486,
331     HT_TEXTURE2DARRAY = 487,
332     HT_TEXTURE2DMS = 488,
333     HT_TEXTURE2DMSARRAY = 489,
334     HT_TEXTURE3D = 490,
335     HT_TEXTURECUBE = 491,
336     HT_TEXTURECUBEARRAY = 492,
337     HT_TRUE = 493,
338     HT_TYPEDEF = 494,
339     HT_TRIANGLE = 495,
340     HT_TRIANGLEADJ = 496,
341     HT_TRIANGLESTREAM = 497,
342     HT_UNORM = 498,
343     HT_VECTOR = 499,
344     HT_VERTEXFRAGMENT = 500,
345     HT_VERTEXSHADER = 501,
346     HT_VOLATILE = 502,
347     HT_BOOL1 = 503,
348     HT_BOOL1x1 = 504,
349     HT_BOOL2x1 = 505,
350     HT_BOOL3x1 = 506,
351     HT_BOOL4x1 = 507,
352     HT_BOOL2 = 508,
353     HT_BOOL1x2 = 509,
354     HT_BOOL2x2 = 510,
355     HT_BOOL3x2 = 511,
356     HT_BOOL4x2 = 512,
357     HT_BOOL3 = 513,
358     HT_BOOL1x3 = 514,
359     HT_BOOL2x3 = 515,
360     HT_BOOL3x3 = 516,
361     HT_BOOL4x3 = 517,
362     HT_BOOL4 = 518,
363     HT_BOOL1x4 = 519,
364     HT_BOOL2x4 = 520,
365     HT_BOOL3x4 = 521,
366     HT_BOOL4x4 = 522,
367     HT_FLOAT1 = 523,
368     HT_FLOAT1x1 = 524,
369     HT_FLOAT2x1 = 525,
370     HT_FLOAT3x1 = 526,
371     HT_FLOAT4x1 = 527,
372     HT_FLOAT2 = 528,
373     HT_FLOAT1x2 = 529,
374     HT_FLOAT2x2 = 530,
375     HT_FLOAT3x2 = 531,
376     HT_FLOAT4x2 = 532,
377     HT_FLOAT3 = 533,
378     HT_FLOAT1x3 = 534,
379     HT_FLOAT2x3 = 535,
380     HT_FLOAT3x3 = 536,
381     HT_FLOAT4x3 = 537,
382     HT_FLOAT4 = 538,
383     HT_FLOAT1x4 = 539,
384     HT_FLOAT2x4 = 540,
385     HT_FLOAT3x4 = 541,
386     HT_FLOAT4x4 = 542,
387     HT_DOUBLE1 = 543,
388     HT_DOUBLE1x1 = 544,
389     HT_DOUBLE2x1 = 545,
390     HT_DOUBLE3x1 = 546,
391     HT_DOUBLE4x1 = 547,
392     HT_DOUBLE2 = 548,
393     HT_DOUBLE1x2 = 549,
394     HT_DOUBLE2x2 = 550,
395     HT_DOUBLE3x2 = 551,
396     HT_DOUBLE4x2 = 552,
397     HT_DOUBLE3 = 553,
398     HT_DOUBLE1x3 = 554,
399     HT_DOUBLE2x3 = 555,
400     HT_DOUBLE3x3 = 556,
401     HT_DOUBLE4x3 = 557,
402     HT_DOUBLE4 = 558,
403     HT_DOUBLE1x4 = 559,
404     HT_DOUBLE2x4 = 560,
405     HT_DOUBLE3x4 = 561,
406     HT_DOUBLE4x4 = 562,
407     HT_DWORD1 = 563,
408     HT_DWORD1x1 = 564,
409     HT_DWORD2x1 = 565,
410     HT_DWORD3x1 = 566,
411     HT_DWORD4x1 = 567,
412     HT_DWORD2 = 568,
413     HT_DWORD1x2 = 569,
414     HT_DWORD2x2 = 570,
415     HT_DWORD3x2 = 571,
416     HT_DWORD4x2 = 572,
417     HT_DWORD3 = 573,
418     HT_DWORD1x3 = 574,
419     HT_DWORD2x3 = 575,
420     HT_DWORD3x3 = 576,
421     HT_DWORD4x3 = 577,
422     HT_DWORD4 = 578,
423     HT_DWORD1x4 = 579,
424     HT_DWORD2x4 = 580,
425     HT_DWORD3x4 = 581,
426     HT_DWORD4x4 = 582,
427     HT_INT1 = 583,
428     HT_INT1x1 = 584,
429     HT_INT2x1 = 585,
430     HT_INT3x1 = 586,
431     HT_INT4x1 = 587,
432     HT_INT2 = 588,
433     HT_INT1x2 = 589,
434     HT_INT2x2 = 590,
435     HT_INT3x2 = 591,
436     HT_INT4x2 = 592,
437     HT_INT3 = 593,
438     HT_INT1x3 = 594,
439     HT_INT2x3 = 595,
440     HT_INT3x3 = 596,
441     HT_INT4x3 = 597,
442     HT_INT4 = 598,
443     HT_INT1x4 = 599,
444     HT_INT2x4 = 600,
445     HT_INT3x4 = 601,
446     HT_INT4x4 = 602,
447     HT_UINT1 = 603,
448     HT_UINT1x1 = 604,
449     HT_UINT2x1 = 605,
450     HT_UINT3x1 = 606,
451     HT_UINT4x1 = 607,
452     HT_UINT2 = 608,
453     HT_UINT1x2 = 609,
454     HT_UINT2x2 = 610,
455     HT_UINT3x2 = 611,
456     HT_UINT4x2 = 612,
457     HT_UINT3 = 613,
458     HT_UINT1x3 = 614,
459     HT_UINT2x3 = 615,
460     HT_UINT3x3 = 616,
461     HT_UINT4x3 = 617,
462     HT_UINT4 = 618,
463     HT_UINT1x4 = 619,
464     HT_UINT2x4 = 620,
465     HT_UINT3x4 = 621,
466     HT_UINT4x4 = 622,
467     PREPROCESSOR_DEFINE = 623,
468     PREPROCESSOR_ELIF = 624,
469     PREPROCESSOR_ELSE = 625,
470     PREPROCESSOR_ENDIF = 626,
471     PREPROCESSOR_ERROR = 627,
472     PREPROCESSOR_IF = 628,
473     PREPROCESSOR_IFDEF = 629,
474     PREPROCESSOR_IFNDEF = 630,
475     PREPROCESSOR_INCLUDE = 631,
476     PREPROCESSOR_LINE = 632,
477     PREPROCESSOR_PRAGMA = 633,
478     PREPROCESSOR_UNDEF = 634,
479     PREPROCESSOR_REGION = 635,
480     HT_AUTO = 636,
481     HT_CATCH = 637,
482     HT_CHAR = 638,
483     HT_CLASS = 639,
484     HT_CONST_CAST = 640,
485     HT_DELETE = 641,
486     HT_DYNAMIC_CAST = 642,
487     HT_ENUM = 643,
488     HT_EXPLICIT = 644,
489     HT_FRIEND = 645,
490     HT_GOTO = 646,
491     HT_LONG = 647,
492     HT_MUTABLE = 648,
493     HT_NEW = 649,
494     HT_OPERATOR = 650,
495     HT_PRIVATE = 651,
496     HT_PROTECTED = 652,
497     HT_PUBLIC = 653,
498     HT_REINTERPRET_CAST = 654,
499     HT_SHORT = 655,
500     HT_SIGNED = 656,
501     HT_SIZEOF = 657,
502     HT_STATIC_CAST = 658,
503     HT_TEMPLATE = 659,
504     HT_THIS = 660,
505     HT_THROW = 661,
506     HT_TRY = 662,
507     HT_TYPENAME = 663,
508     HT_UNION = 664,
509     HT_UNSIGNED = 665,
510     HT_USING = 666,
511     HT_VIRTUAL = 667,
512     T_INC = 668,
513     T_DEC = 669,
514     T_LE = 670,
515     T_GE = 671,
516     T_EQ = 672,
517     T_NE = 673,
518     T_LEFT = 674,
519     T_RIGHT = 675,
520     T_AND = 676,
521     T_OR = 677,
522     T_XOR = 678,
523     T_MULEQ = 679,
524     T_DIVEQ = 680,
525     T_MODEQ = 681,
526     T_ADDEQ = 682,
527     T_SUBEQ = 683,
528     T_LEFTEQ = 684,
529     T_RIGHTEQ = 685,
530     T_ANDEQ = 686,
531     T_XOREQ = 687,
532     T_OREQ = 688,
533     FLOAT = 689,
534     STRING = 690,
535     NAME = 691,
536     T_ERROR = 692
537   };
538
539    };
540    /// Token type.
541    typedef token::yytokentype token_type;
542
543    /// Build a parser object.
544    LolFxParser (class LolFxCompiler& mc_yyarg);
545    virtual ~LolFxParser ();
546
547    /// Parse.
548    /// \returns  0 iff parsing succeeded.
549    virtual int parse ();
550
551#if YYDEBUG
552    /// The current debugging stream.
553    std::ostream& debug_stream () const;
554    /// Set the current debugging stream.
555    void set_debug_stream (std::ostream &);
556
557    /// Type for debugging levels.
558    typedef int debug_level_type;
559    /// The current debugging level.
560    debug_level_type debug_level () const;
561    /// Set the current debugging level.
562    void set_debug_level (debug_level_type l);
563#endif
564
565  private:
566    /// Report a syntax error.
567    /// \param loc    where the syntax error is found.
568    /// \param msg    a description of the syntax error.
569    virtual void error (const location_type& loc, const std::string& msg);
570
571    /// Generate an error message.
572    /// \param state   the state where the error occurred.
573    /// \param tok     the lookahead token.
574    virtual std::string yysyntax_error_ (int yystate, int tok);
575
576#if YYDEBUG
577    /// \brief Report a symbol value on the debug stream.
578    /// \param yytype       The token type.
579    /// \param yyvaluep     Its semantic value.
580    /// \param yylocationp  Its location.
581    virtual void yy_symbol_value_print_ (int yytype,
582                                         const semantic_type* yyvaluep,
583                                         const location_type* yylocationp);
584    /// \brief Report a symbol on the debug stream.
585    /// \param yytype       The token type.
586    /// \param yyvaluep     Its semantic value.
587    /// \param yylocationp  Its location.
588    virtual void yy_symbol_print_ (int yytype,
589                                   const semantic_type* yyvaluep,
590                                   const location_type* yylocationp);
591#endif
592
593
594    /// State numbers.
595    typedef int state_type;
596    /// State stack type.
597    typedef stack<state_type>    state_stack_type;
598    /// Semantic value stack type.
599    typedef stack<semantic_type> semantic_stack_type;
600    /// location stack type.
601    typedef stack<location_type> location_stack_type;
602
603    /// The state stack.
604    state_stack_type yystate_stack_;
605    /// The semantic value stack.
606    semantic_stack_type yysemantic_stack_;
607    /// The location stack.
608    location_stack_type yylocation_stack_;
609
610    /// Whether the given \c yypact_ value indicates a defaulted state.
611    /// \param yyvalue   the value to check
612    static bool yy_pact_value_is_default_ (int yyvalue);
613
614    /// Whether the given \c yytable_ value indicates a syntax error.
615    /// \param yyvalue   the value to check
616    static bool yy_table_value_is_error_ (int yyvalue);
617
618    /// Internal symbol numbers.
619    typedef unsigned short int token_number_type;
620    /* Tables.  */
621    /// For a state, the index in \a yytable_ of its portion.
622    static const short int yypact_[];
623    static const short int yypact_ninf_;
624
625    /// For a state, default reduction number.
626    /// Unless\a  yytable_ specifies something else to do.
627    /// Zero means the default is an error.
628    static const unsigned short int yydefact_[];
629
630    static const short int yypgoto_[];
631    static const short int yydefgoto_[];
632
633    /// What to do in a state.
634    /// \a yytable_[yypact_[s]]: what to do in state \a s.
635    /// - if positive, shift that token.
636    /// - if negative, reduce the rule which number is the opposite.
637    /// - if zero, do what YYDEFACT says.
638    static const short int yytable_[];
639    static const short int yytable_ninf_;
640
641    static const short int yycheck_[];
642
643    /// For a state, its accessing symbol.
644    static const unsigned short int yystos_[];
645
646    /// For a rule, its LHS.
647    static const unsigned short int yyr1_[];
648    /// For a rule, its RHS length.
649    static const unsigned char yyr2_[];
650
651#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
652    /// For a symbol, its name in clear.
653    static const char* const yytname_[];
654#endif
655
656    /// Convert the symbol name \a n to a form suitable for a diagnostic.
657    static std::string yytnamerr_ (const char *n);
658
659#if YYDEBUG
660    /// A type to store symbol numbers and -1.
661    typedef short int rhs_number_type;
662    /// A `-1'-separated list of the rules' RHS.
663    static const rhs_number_type yyrhs_[];
664    /// For each rule, the index of the first RHS symbol in \a yyrhs_.
665    static const unsigned short int yyprhs_[];
666    /// For each rule, its source line number.
667    static const unsigned short int yyrline_[];
668    /// For each scanner token number, its symbol number.
669    static const unsigned short int yytoken_number_[];
670    /// Report on the debug stream that the rule \a r is going to be reduced.
671    virtual void yy_reduce_print_ (int r);
672    /// Print the state stack on the debug stream.
673    virtual void yystack_print_ ();
674
675    /* Debugging.  */
676    int yydebug_;
677    std::ostream* yycdebug_;
678#endif
679
680    /// Convert a scanner token number \a t to a symbol number.
681    token_number_type yytranslate_ (int t);
682
683    /// \brief Reclaim the memory associated to a symbol.
684    /// \param yymsg        Why this token is reclaimed.
685    /// \param yytype       The symbol type.
686    /// \param yyvaluep     Its semantic value.
687    /// \param yylocationp  Its location.
688    inline void yydestruct_ (const char* yymsg,
689                             int yytype,
690                             semantic_type* yyvaluep,
691                             location_type* yylocationp);
692
693    /// Pop \a n symbols the three stacks.
694    inline void yypop_ (unsigned int n = 1);
695
696    /* Constants.  */
697    static const int yyeof_;
698    /* LAST_ -- Last index in TABLE_.  */
699    static const int yylast_;
700    static const int yynnts_;
701    static const int yyempty_;
702    static const int yyfinal_;
703    static const int yyterror_;
704    static const int yyerrcode_;
705    static const int yyntokens_;
706    static const unsigned int yyuser_token_number_max_;
707    static const token_number_type yyundef_token_;
708
709    /* User arguments.  */
710    class LolFxCompiler& mc;
711  };
712
713} // lol
714
715/* Line 35 of lalr1.cc  */
716#line 717 "generated/lolfx-parser.h"
717
718
719
720#endif /* ! defined PARSER_HEADER_H */
Note: See TracBrowser for help on using the repository browser.