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

Last change on this file since 2410 was 2410, checked in by touky, 7 years ago

easymesh : Added SmoothMesh operation, works well with triangle, not well with a box.

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