40 #ifndef YY_YY_ROSTLAB_BLAST_PARSER_PARSER_H_INCLUDED
41 # define YY_YY_ROSTLAB_BLAST_PARSER_PARSER_H_INCLUDED
43 #line 24 "blast-parser-parser.ypp" // lalr1.cc:372
47 namespace rostlab {
namespace blast {
class parser_driver; } }
49 #line 50 "rostlab/blast-parser-parser.h" // lalr1.cc:372
61 # if (defined __GNUC__ \
62 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
63 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
64 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
66 # define YY_ATTRIBUTE(Spec)
70 #ifndef YY_ATTRIBUTE_PURE
71 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
74 #ifndef YY_ATTRIBUTE_UNUSED
75 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
78 #if !defined _Noreturn \
79 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
80 # if defined _MSC_VER && 1200 <= _MSC_VER
81 # define _Noreturn __declspec (noreturn)
83 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
88 #if ! defined lint || defined __GNUC__
89 # define YYUSE(E) ((void) (E))
94 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
96 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
97 _Pragma ("GCC diagnostic push") \
98 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
99 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
100 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
101 _Pragma ("GCC diagnostic pop")
103 # define YY_INITIAL_VALUE(Value) Value
105 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
106 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
107 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
109 #ifndef YY_INITIAL_VALUE
110 # define YY_INITIAL_VALUE(Value)
118 #line 22 "blast-parser-parser.ypp" // lalr1.cc:372
119 namespace rostlab {
namespace blast {
120 #line 121 "rostlab/blast-parser-parser.h" // lalr1.cc:372
134 #line 47 "/tmp/buildd/librostlab-blast-1.0.1/lib/blast-parser-parser.ypp" // lalr1.cc:372
140 #line 141 "rostlab/blast-parser-parser.h" // lalr1.cc:372
151 syntax_error (
const location_type& l,
const std::string& m);
204 template <
typename Base>
218 const location_type& l);
222 const semantic_type& v,
223 const location_type& l);
261 symbol_number_type
type_get ()
const;
264 token_type
token ()
const;
283 virtual int parse ();
302 virtual void error (
const location_type& loc,
const std::string& msg);
313 typedef int state_type;
318 virtual std::string yysyntax_error_ (state_type yystate,
319 symbol_number_type yytoken)
const;
324 state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
328 static bool yy_pact_value_is_default_ (
int yyvalue);
332 static bool yy_table_value_is_error_ (
int yyvalue);
334 static const signed char yypact_ninf_;
335 static const signed char yytable_ninf_;
338 static token_number_type yytranslate_ (
int t);
343 static const signed char yypact_[];
348 static const unsigned char yydefact_[];
351 static const signed char yypgoto_[];
354 static const signed char yydefgoto_[];
359 static const unsigned char yytable_[];
361 static const unsigned char yycheck_[];
365 static const unsigned char yystos_[];
368 static const unsigned char yyr1_[];
371 static const unsigned char yyr2_[];
375 static std::string yytnamerr_ (
const char *n);
379 static const char*
const yytname_[];
382 static const unsigned char yyrline_[];
384 virtual void yy_reduce_print_ (
int r);
386 virtual void yystack_print_ ();
390 std::ostream* yycdebug_;
395 template <
typename Base>
403 template <
typename Base>
414 typedef state_type kind_type;
417 by_state (kind_type s);
420 by_state (
const by_state& other);
423 void move (by_state& that);
427 symbol_number_type type_get ()
const;
436 struct stack_symbol_type : basic_symbol<by_state>
439 typedef basic_symbol<by_state> super_type;
441 stack_symbol_type ();
443 stack_symbol_type (state_type s, symbol_type& sym);
445 stack_symbol_type& operator= (
const stack_symbol_type& that);
449 typedef stack<stack_symbol_type> stack_type;
459 void yypush_ (
const char* m, stack_symbol_type& s);
467 void yypush_ (
const char* m, state_type s, symbol_type& sym);
470 void yypop_ (
unsigned int n = 1);
492 #line 22 "blast-parser-parser.ypp" // lalr1.cc:372
494 #line 495 "rostlab/blast-parser-parser.h" // lalr1.cc:372
499 #endif // !YY_YY_ROSTLAB_BLAST_PARSER_PARSER_H_INCLUDED
Type access provider for token (enum) based symbols.
virtual void error(const location_type &loc, const std::string &msg)
unsigned char token_number_type
Internal symbol number for tokens (subsumed by symbol_number_type).
basic_symbol()
Default constructor.
parser(rostlab::blast::parser_driver &drv_yyarg, void *yyscanner_yyarg)
Build a parser object.
by_type()
Default constructor.
std::ostream & debug_stream() const YY_ATTRIBUTE_PURE
The current debugging stream.
void move(basic_symbol &s)
Destructive move, s is emptied into this.
syntax_error(const location_type &l, const std::string &m)
int debug_level_type
Type for debugging levels.
#define YY_ATTRIBUTE_PURE
location_type location
The location.
void set_debug_level(debug_level_type l)
Set the current debugging level.
debug_level_type debug_level() const YY_ATTRIBUTE_PURE
The current debugging level.
token::yytokentype token_type
(External) token type, as returned by yylex.
int symbol_number_type
Internal symbol number.
symbol_number_type type_get() const
token_type kind_type
The symbol type as needed by the constructor.
Syntax errors thrown from user actions.
location location_type
Symbol locations.
token_type token() const
The token.
semantic_type value
The semantic value.
void set_debug_stream(std::ostream &)
Set the current debugging stream.
Blast (default, -m 0) output parser.
Base super_type
Alias to Base.
basic_symbol< by_type > symbol_type
"External" symbols: returned by the scanner.
void move(by_type &that)
Steal the symbol type from that.