![]() |
Vcsn
2.1
Be Rational
|
A complete symbol. More...
#include <parse.hh>
Public Types | |
| typedef Base | super_type |
| Alias to Base. More... | |
Public Member Functions | |
| basic_symbol () | |
| Default constructor. More... | |
| basic_symbol (const basic_symbol &other) | |
| Copy constructor. More... | |
| basic_symbol (typename Base::kind_type t, const location_type &l) | |
| Constructor for valueless symbols, and symbols from each type. More... | |
| basic_symbol (typename Base::kind_type t, const paths_t v, const location_type &l) | |
| basic_symbol (typename Base::kind_type t, const states_t v, const location_type &l) | |
| basic_symbol (typename Base::kind_type t, const string_t v, const location_type &l) | |
| basic_symbol (typename Base::kind_type t, const semantic_type &v, const location_type &l) | |
| Constructor for symbols with semantic value. More... | |
| ~basic_symbol () | |
| Destroy the symbol. More... | |
| void | clear () |
| Destroy contents, and record that is empty. More... | |
| bool | empty () const |
| Whether empty. More... | |
| void | move (basic_symbol &s) |
| Destructive move, s is emptied into this. More... | |
Public Attributes | |
| semantic_type | value |
| The semantic value. More... | |
| location_type | location |
| The location. More... | |
Private Member Functions | |
| basic_symbol & | operator= (const basic_symbol &other) |
| Assignment operator. More... | |
A complete symbol.
Expects its Base type to provide access to the symbol type via type_get().
Provide access to semantic value and location.
| typedef Base vcsn::detail::dot::parser::basic_symbol< Base >::super_type |
|
inline |
|
inline |
Copy constructor.
Definition at line 821 of file parse.hh.
References vcsn::detail::dot::variant< S >::copy(), and vcsn::detail::dot::parser::basic_symbol< Base >::value.
| vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol | ( | typename Base::kind_type | t, |
| const location_type & | l | ||
| ) |
| vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol | ( | typename Base::kind_type | t, |
| const paths_t | v, | ||
| const location_type & | l | ||
| ) |
| vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol | ( | typename Base::kind_type | t, |
| const states_t | v, | ||
| const location_type & | l | ||
| ) |
| vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol | ( | typename Base::kind_type | t, |
| const string_t | v, | ||
| const location_type & | l | ||
| ) |
|
inline |
Constructor for symbols with semantic value.
Definition at line 861 of file parse.hh.
References vcsn::detail::dot::variant< S >::copy(), vcsn::v, vcsn::detail::dot::parser::basic_symbol< Base >::value, and vcsn::detail::void.
|
inline |
|
inline |
Destroy contents, and record that is empty.
Definition at line 940 of file parse.hh.
References vcsn::detail::void.
Referenced by vcsn::detail::dot::parser::parse().
|
inline |
Whether empty.
Definition at line 989 of file parse.hh.
References vcsn::detail::dot::parser::empty_symbol.
Referenced by vcsn::detail::dot::parser::parse(), vcsn::detail::dot::parser::yy_print_(), and vcsn::detail::dot::parser::yysyntax_error_().
|
inline |
Destructive move, s is emptied into this.
Definition at line 997 of file parse.hh.
References vcsn::detail::dot::parser::basic_symbol< Base >::location, and vcsn::detail::dot::parser::basic_symbol< Base >::value.
Referenced by vcsn::detail::dot::parser::parse().
|
private |
Assignment operator.
| location_type vcsn::detail::dot::parser::basic_symbol< Base >::location |
The location.
Definition at line 434 of file parse.hh.
Referenced by vcsn::detail::dot::parser::basic_symbol< Base >::move(), vcsn::detail::dot::parser::stack_symbol_type::operator=(), vcsn::detail::dot::parser::parse(), and vcsn::detail::dot::parser::yy_print_().
| semantic_type vcsn::detail::dot::parser::basic_symbol< Base >::value |
The semantic value.
Definition at line 431 of file parse.hh.
Referenced by vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol(), vcsn::detail::dot::parser::basic_symbol< Base >::move(), vcsn::detail::dot::parser::stack_symbol_type::operator=(), vcsn::detail::dot::parser::parse(), vcsn::detail::dot::parser::stack_symbol_type::stack_symbol_type(), and vcsn::detail::dot::parser::yy_print_().