40 #ifndef YY_TLYY_PARSETL_HH_INCLUDED
41 # define YY_TLYY_PARSETL_HH_INCLUDED
43 #line 34 "parsetl.yy" // lalr1.cc:377
47 #include <spot/tl/parse.hh>
49 #include <spot/tl/print.hh>
53 #line 54 "parsetl.hh" // lalr1.cc:377
66 # if (defined __GNUC__ \
67 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
68 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
69 # define YY_ATTRIBUTE(Spec) __attribute__(Spec)
71 # define YY_ATTRIBUTE(Spec)
75 #ifndef YY_ATTRIBUTE_PURE
76 # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
79 #ifndef YY_ATTRIBUTE_UNUSED
80 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
83 #if !defined _Noreturn \
84 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
85 # if defined _MSC_VER && 1200 <= _MSC_VER
86 # define _Noreturn __declspec (noreturn)
88 # define _Noreturn YY_ATTRIBUTE ((__noreturn__))
93 #if ! defined lint || defined __GNUC__
94 # define YYUSE(E) ((void) (E))
99 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
101 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
102 _Pragma ("GCC diagnostic push") \
103 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
104 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
105 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
106 _Pragma ("GCC diagnostic pop")
108 # define YY_INITIAL_VALUE(Value) Value
110 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
111 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
112 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
114 #ifndef YY_INITIAL_VALUE
115 # define YY_INITIAL_VALUE(Value)
125 #line 126 "parsetl.hh" // lalr1.cc:377
139 #line 48 "parsetl.yy" // lalr1.cc:377
146 #line 147 "parsetl.hh" // lalr1.cc:377
157 syntax_error (
const location_type& l,
const std::string& m);
158 location_type location;
174 BRA_BANG_BLOCK = 266,
177 BRACE_BANG_CLOSE = 269,
201 OP_SQBKT_CLOSE = 293,
207 OP_UCONCAT_NONO = 299,
208 OP_ECONCAT_NONO = 300,
227 enum { empty_symbol = -2 };
238 template <
typename Base>
252 const location_type& l);
256 const semantic_type& v,
257 const location_type& l);
305 symbol_number_type
type_get ()
const;
308 token_type
token ()
const;
326 virtual int parse ();
337 debug_level_type
debug_level () const YY_ATTRIBUTE_PURE;
345 virtual void error (
const location_type& loc,
const std::string& msg);
356 typedef int state_type;
361 virtual std::string yysyntax_error_ (state_type yystate,
362 const symbol_type& yyla)
const;
367 state_type yy_lr_goto_state_ (state_type yystate,
int yysym);
371 static bool yy_pact_value_is_default_ (
int yyvalue);
375 static bool yy_table_value_is_error_ (
int yyvalue);
377 static const signed char yypact_ninf_;
378 static const signed char yytable_ninf_;
381 static token_number_type yytranslate_ (
int t);
386 static const short int yypact_[];
391 static const unsigned char yydefact_[];
394 static const short int yypgoto_[];
397 static const short int yydefgoto_[];
402 static const short int yytable_[];
404 static const short int yycheck_[];
408 static const unsigned char yystos_[];
411 static const unsigned char yyr1_[];
414 static const unsigned char yyr2_[];
418 static std::string yytnamerr_ (
const char *n);
422 static const char*
const yytname_[];
425 static const unsigned short int yyrline_[];
427 virtual void yy_reduce_print_ (
int r);
429 virtual void yystack_print_ ();
433 std::ostream* yycdebug_;
438 template <
typename Base>
446 template <
typename Base>
457 typedef state_type kind_type;
460 by_state (kind_type s);
463 by_state (
const by_state& other);
469 void move (by_state& that);
473 symbol_number_type type_get ()
const;
476 enum { empty_state = -1 };
484 struct stack_symbol_type : basic_symbol<by_state>
487 typedef basic_symbol<by_state> super_type;
489 stack_symbol_type ();
491 stack_symbol_type (state_type s, symbol_type& sym);
493 stack_symbol_type& operator= (
const stack_symbol_type& that);
497 typedef stack<stack_symbol_type> stack_type;
507 void yypush_ (
const char* m, stack_symbol_type& s);
515 void yypush_ (
const char* m, state_type s, symbol_type& sym);
518 void yypop_ (
unsigned int n = 1);
542 #line 543 "parsetl.hh" // lalr1.cc:377
547 #endif // !YY_TLYY_PARSETL_HH_INCLUDED
symbol_number_type type_get() const
spot::location location_type
Symbol locations.
Definition: parsetl.hh:152
debug_level_type debug_level() const
The current debugging level.
Definition: parsetl.hh:124
Symbol semantic values.
Definition: parsetl.hh:137
Type access provider for token (enum) based symbols.
Definition: parsetl.hh:283
An environment that describes atomic propositions.
Definition: environment.hh:32
A Bison parser.
Definition: parsetl.hh:132
void set_debug_level(debug_level_type l)
Set the current debugging level.
Definition: formula.hh:1543
semantic_type value
The semantic value.
Definition: parsetl.hh:272
int symbol_number_type
Symbol type: an internal symbol number.
Definition: parsetl.hh:224
by_type()
Default constructor.
token_type kind_type
The symbol type as needed by the constructor.
Definition: parsetl.hh:292
void clear()
Record that this symbol is empty.
std::list< one_parse_error > parse_error_list
A list of parser diagnostics, as filled by parse.
Definition: parse.hh:42
location_type location
The location.
Definition: parsetl.hh:275
basic_symbol()
Default constructor.
basic_symbol< by_type > symbol_type
"External" symbols: returned by the scanner.
Definition: parsetl.hh:317
std::ostream & debug_stream() const
The current debugging stream.
virtual void error(const location_type &loc, const std::string &msg)
void clear()
Destroy contents, and record that is empty.
parser(spot::parse_error_list &error_list_yyarg, spot::environment &parse_environment_yyarg, spot::formula &result_yyarg)
Build a parser object.
int debug_level_type
Type for debugging levels.
Definition: parsetl.hh:335
Tokens.
Definition: parsetl.hh:162
void move(basic_symbol &s)
Destructive move, s is emptied into this.
bool empty() const
Whether empty.
void move(by_type &that)
Steal the symbol type from that.
~basic_symbol()
Destroy the symbol.
void set_debug_stream(std::ostream &)
Set the current debugging stream.
Definition: parsetl.hh:51
token_type token() const
The token.
token::yytokentype token_type
(External) token type, as returned by yylex.
Definition: parsetl.hh:221
Definition: parsetl.hh:239
Actual storage for formula nodes.
Definition: formula.hh:107
Definition: parseaut.hh:363
Syntax errors thrown from user actions.
Definition: parsetl.hh:155
int type
Definition: parsetl.hh:313
Base super_type
Alias to Base.
Definition: parsetl.hh:242
unsigned char token_number_type
Internal symbol number for tokens (subsumed by symbol_number_type).
Definition: parsetl.hh:230