vrml1::vrml1_parser Class Reference

A Bison parser. More...

#include <vrml1-parser.hh>

List of all members.

Public Types

typedef location location_type
 Symbol locations.
typedef token::yytokentype token_type
 Token type.
typedef int debug_level_type
 Type for debugging levels.

Public Member Functions

 vrml1_parser (vrml1::Driver &driver_yyarg)
 Build a parser object.
virtual ~vrml1_parser ()
virtual int parse ()
std::ostream & debug_stream () const
 The current debugging stream.
void set_debug_stream (std::ostream &)
 Set the current debugging stream.
debug_level_type debug_level () const
 The current debugging level.
void set_debug_level (debug_level_type l)
 Set the current debugging level.

Private Types

typedef int state_type
 State numbers.
typedef stack< state_typestate_stack_type
 State stack type.
typedef stack< semantic_typesemantic_stack_type
 Semantic value stack type.
typedef stack< location_typelocation_stack_type
 location stack type.
typedef unsigned char token_number_type
 Internal symbol numbers.
typedef short int rhs_number_type
 A type to store symbol numbers and -1.

Private Member Functions

virtual void error (const location_type &loc, const std::string &msg)
virtual std::string yysyntax_error_ (int yystate, int tok)
virtual void yy_symbol_value_print_ (int yytype, const semantic_type *yyvaluep, const location_type *yylocationp)
 Report a symbol value on the debug stream.
virtual void yy_symbol_print_ (int yytype, const semantic_type *yyvaluep, const location_type *yylocationp)
 Report a symbol on the debug stream.
virtual std::string yytnamerr_ (const char *n)
 Convert the symbol name n to a form suitable for a diagnostic.
virtual void yy_reduce_print_ (int r)
 Report on the debug stream that the rule r is going to be reduced.
virtual void yystack_print_ ()
 Print the state stack on the debug stream.
token_number_type yytranslate_ (int t)
 Convert a scanner token number t to a symbol number.
void yydestruct_ (const char *yymsg, int yytype, semantic_type *yyvaluep, location_type *yylocationp)
 Reclaim the memory associated to a symbol.
void yypop_ (unsigned int n=1)
 Pop n symbols the three stacks.

Private Attributes

state_stack_type yystate_stack_
 The state stack.
semantic_stack_type yysemantic_stack_
 The semantic value stack.
location_stack_type yylocation_stack_
 The location stack.
int yydebug_
std::ostream * yycdebug_
vrml1::Driverdriver

Static Private Attributes

static const short int yypact_ []
 For a state, the index in yytable_ of its portion.
static const short int yypact_ninf_ = -588
static const unsigned short int yydefact_ []
static const short int yypgoto_ []
static const short int yydefgoto_ []
static const unsigned short int yytable_ []
static const signed char yytable_ninf_ = -1
static const short int yycheck_ []
static const unsigned short int yystos_ []
 For a state, its accessing symbol.
static const unsigned short int yyr1_ []
 For a rule, its LHS.
static const unsigned char yyr2_ []
 For a rule, its RHS length.
static const char *const yytname_ []
 For a symbol, its name in clear.
static const rhs_number_type yyrhs_ []
 A `-1'-separated list of the rules' RHS.
static const unsigned short int yyprhs_ []
 For each rule, the index of the first RHS symbol in yyrhs_.
static const unsigned short int yyrline_ []
 For each rule, its source line number.
static const unsigned short int yytoken_number_ []
 For each scanner token number, its symbol number.
static const int yyeof_ = 0
static const int yylast_ = 1303
static const int yynnts_ = 163
static const int yyempty_ = -2
static const int yyfinal_ = 6
static const int yyterror_ = 1
static const int yyerrcode_ = 256
static const int yyntokens_ = 148
static const unsigned int yyuser_token_number_max_ = 402
static const token_number_type yyundef_token_ = 2

Classes

union  semantic_type
 Symbol semantic values. More...
struct  token
 Tokens. More...


Detailed Description

A Bison parser.

Member Typedef Documentation

typedef location vrml1::vrml1_parser::location_type

Symbol locations.

typedef token::yytokentype vrml1::vrml1_parser::token_type

Token type.

typedef int vrml1::vrml1_parser::debug_level_type

Type for debugging levels.

typedef int vrml1::vrml1_parser::state_type [private]

State numbers.

typedef stack<state_type> vrml1::vrml1_parser::state_stack_type [private]

State stack type.

typedef stack<semantic_type> vrml1::vrml1_parser::semantic_stack_type [private]

Semantic value stack type.

typedef stack<location_type> vrml1::vrml1_parser::location_stack_type [private]

location stack type.

typedef unsigned char vrml1::vrml1_parser::token_number_type [private]

Internal symbol numbers.

typedef short int vrml1::vrml1_parser::rhs_number_type [private]

A type to store symbol numbers and -1.


Constructor & Destructor Documentation

vrml1::vrml1_parser::vrml1_parser ( vrml1::Driver driver_yyarg  ) 

Build a parser object.

vrml1::vrml1_parser::~vrml1_parser (  )  [virtual]


Member Function Documentation

int vrml1::vrml1_parser::parse (  )  [virtual]

Parse.

Returns:
0 iff parsing succeeded.

Look-ahead and look-ahead in internal form.

Semantic value of the look-ahead.

Location of the look-ahead.

The locations where the error started and ended.

$$.

$.

std::ostream & vrml1::vrml1_parser::debug_stream (  )  const

The current debugging stream.

void vrml1::vrml1_parser::set_debug_stream ( std::ostream &  o  ) 

Set the current debugging stream.

vrml1_parser::debug_level_type vrml1::vrml1_parser::debug_level (  )  const

The current debugging level.

void vrml1::vrml1_parser::set_debug_level ( debug_level_type  l  ) 

Set the current debugging level.

void vrml1::vrml1_parser::error ( const location_type loc,
const std::string &  msg 
) [private, virtual]

Report a syntax error.

Parameters:
loc where the syntax error is found.
msg a description of the syntax error.

std::string vrml1::vrml1_parser::yysyntax_error_ ( int  yystate,
int  tok 
) [private, virtual]

Generate an error message.

Parameters:
state the state where the error occurred.
tok the look-ahead token.

void vrml1::vrml1_parser::yy_symbol_value_print_ ( int  yytype,
const semantic_type yyvaluep,
const location_type yylocationp 
) [inline, private, virtual]

Report a symbol value on the debug stream.

Parameters:
yytype The token type.
yyvaluep Its semantic value.
yylocationp Its location.

void vrml1::vrml1_parser::yy_symbol_print_ ( int  yytype,
const semantic_type yyvaluep,
const location_type yylocationp 
) [private, virtual]

Report a symbol on the debug stream.

Parameters:
yytype The token type.
yyvaluep Its semantic value.
yylocationp Its location.

std::string vrml1::vrml1_parser::yytnamerr_ ( const char *  n  )  [private, virtual]

Convert the symbol name n to a form suitable for a diagnostic.

void vrml1::vrml1_parser::yy_reduce_print_ ( int  r  )  [private, virtual]

Report on the debug stream that the rule r is going to be reduced.

void vrml1::vrml1_parser::yystack_print_ (  )  [private, virtual]

Print the state stack on the debug stream.

vrml1_parser::token_number_type vrml1::vrml1_parser::yytranslate_ ( int  t  )  [private]

Convert a scanner token number t to a symbol number.

void vrml1::vrml1_parser::yydestruct_ ( const char *  yymsg,
int  yytype,
semantic_type yyvaluep,
location_type yylocationp 
) [inline, private]

Reclaim the memory associated to a symbol.

Parameters:
yymsg Why this token is reclaimed.
yytype The symbol type.
yyvaluep Its semantic value.
yylocationp Its location.

void vrml1::vrml1_parser::yypop_ ( unsigned int  n = 1  )  [inline, private]

Pop n symbols the three stacks.


Member Data Documentation

state_stack_type vrml1::vrml1_parser::yystate_stack_ [private]

The state stack.

semantic_stack_type vrml1::vrml1_parser::yysemantic_stack_ [private]

The semantic value stack.

location_stack_type vrml1::vrml1_parser::yylocation_stack_ [private]

The location stack.

const short int vrml1::vrml1_parser::yypact_ [static, private]

For a state, the index in yytable_ of its portion.

const short int vrml1::vrml1_parser::yypact_ninf_ = -588 [static, private]

const unsigned short int vrml1::vrml1_parser::yydefact_ [static, private]

For a state, default rule to reduce. Unlessyytable_ specifies something else to do. Zero means the default is an error.

const short int vrml1::vrml1_parser::yypgoto_ [static, private]

Initial value:

  {
      -588,  -588,   326,   255,  -588,  -588,  -588,   -52,  -588,  -588,
      54,  -588,  -588,  -588,  -588,  -588,  -588,    42,  -588,  -588,
    -588,    40,  -588,  -357,    45,  -588,  -588,  -588,  -588,  -588,
      39,  -588,  -352,  -588,  -588,  -588,  -588,    28,  -588,  -588,
    -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,
    -588,  -588,    11,  -588,  -588,  -588,     6,  -588,  -588,  -588,
       0,  -588,  -588,  -588,   -11,  -588,  -588,  -588,   -14,  -588,
    -588,  -588,    44,  -588,  -588,  -588,   -17,  -588,  -588,  -588,
     -23,  -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,
     -35,  -588,  -588,  -587,  -588,  -588,  -588,  -588,   -28,  -588,
    -588,  -588,  -588,  -588,  -588,  -588,  -588,  -588,   -44,  -588,
    -588,  -588,   -50,  -588,  -588,  -588,   -51,  -588,  -588,   -68,
    -588,   -59,  -588,  -588,  -588,   -69,  -588,  -588,  -588,   -71,
    -588,  -588,  -588,  -588,   -79,  -588,   555,  -239,  -297,  -397,
    -228,  -588,    -8,  -311,  -588,  -364,  -588,  -588,  -304,   -25,
    -588,   -26,   -65,  -588,  -314,  -588,   -29,  -588,  -588,  -588,
    -588,   334,  -588
  }

const short int vrml1::vrml1_parser::yydefgoto_ [static, private]

Initial value:

  {
        -1,     2,     4,    51,    52,    53,   129,    54,    55,    56,
      57,    58,   429,   430,    59,   290,   291,   292,    60,   296,
     297,   298,   469,   671,   672,    61,   300,    62,   304,   305,
     306,   479,   677,   678,    63,   320,   321,   322,    64,   324,
     513,    65,   326,    66,   328,    67,   330,    68,   332,    69,
     338,   339,   340,    70,   344,   345,   346,    71,   351,   352,
     353,    72,   358,   359,   360,    73,   368,   369,   370,    74,
     311,   312,   313,    75,   375,   376,   377,    76,   382,   383,
     384,   569,   572,   575,    77,   386,   586,    78,   395,   396,
     397,   596,   685,   597,   602,    79,   389,   390,   391,    80,
     403,    81,   405,    82,   407,    83,   410,   411,   412,    84,
     417,   418,   419,    85,   424,   425,   426,    86,   435,   436,
     437,   644,    87,   441,   442,   443,    88,   447,   448,   449,
     658,    89,   454,   455,   456,   666,     8,   282,   489,   625,
     626,   692,   490,   496,   681,   559,   615,   690,   608,   609,
     688,    91,    92,   117,   518,   523,    93,    94,   119,   646,
     722,   278,   279
  }

const unsigned short int vrml1::vrml1_parser::yytable_ [static, private]

What to do in a state. yytable_[yypact_[s]]: what to do in state s.

const signed char vrml1::vrml1_parser::yytable_ninf_ = -1 [static, private]

const short int vrml1::vrml1_parser::yycheck_ [static, private]

const unsigned short int vrml1::vrml1_parser::yystos_ [static, private]

For a state, its accessing symbol.

const unsigned short int vrml1::vrml1_parser::yyr1_ [static, private]

For a rule, its LHS.

const unsigned char vrml1::vrml1_parser::yyr2_ [static, private]

For a rule, its RHS length.

const char *const vrml1::vrml1_parser::yytname_ [static, private]

For a symbol, its name in clear.

const vrml1_parser::rhs_number_type vrml1::vrml1_parser::yyrhs_ [static, private]

A `-1'-separated list of the rules' RHS.

const unsigned short int vrml1::vrml1_parser::yyprhs_ [static, private]

For each rule, the index of the first RHS symbol in yyrhs_.

const unsigned short int vrml1::vrml1_parser::yyrline_ [static, private]

For each rule, its source line number.

const unsigned short int vrml1::vrml1_parser::yytoken_number_ [static, private]

Initial value:

  {
         0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
     355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
     375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
     385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
     395,   396,   397,   398,   399,   400,   401,   402
  }
For each scanner token number, its symbol number.

const int vrml1::vrml1_parser::yyeof_ = 0 [static, private]

const int vrml1::vrml1_parser::yylast_ = 1303 [static, private]

const int vrml1::vrml1_parser::yynnts_ = 163 [static, private]

const int vrml1::vrml1_parser::yyempty_ = -2 [static, private]

const int vrml1::vrml1_parser::yyfinal_ = 6 [static, private]

const int vrml1::vrml1_parser::yyterror_ = 1 [static, private]

const int vrml1::vrml1_parser::yyerrcode_ = 256 [static, private]

const int vrml1::vrml1_parser::yyntokens_ = 148 [static, private]

const unsigned int vrml1::vrml1_parser::yyuser_token_number_max_ = 402 [static, private]

const vrml1_parser::token_number_type vrml1::vrml1_parser::yyundef_token_ = 2 [static, private]

int vrml1::vrml1_parser::yydebug_ [private]

std::ostream* vrml1::vrml1_parser::yycdebug_ [private]

vrml1::Driver& vrml1::vrml1_parser::driver [private]


The documentation for this class was generated from the following files:
Generated on Mon Jul 21 23:57:10 2008 for libvrml1++ by  doxygen 1.5.4