Vcsn  2.0
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
vcsn::detail::dot::parser::basic_symbol< Base > Struct Template Reference

A complete symbol. More...

#include <parse.hh>

Inheritance diagram for vcsn::detail::dot::parser::basic_symbol< Base >:
Collaboration diagram for vcsn::detail::dot::parser::basic_symbol< Base >:

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 ()
 
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_symboloperator= (const basic_symbol &other)
 Assignment operator. More...
 

Detailed Description

template<typename Base>
struct vcsn::detail::dot::parser::basic_symbol< Base >

A complete symbol.

Expects its Base type to provide access to the symbol type via type_get().

Provide access to semantic value and location.

Definition at line 389 of file parse.hh.

Member Typedef Documentation

template<typename Base>
typedef Base vcsn::detail::dot::parser::basic_symbol< Base >::super_type

Alias to Base.

Definition at line 392 of file parse.hh.

Constructor & Destructor Documentation

template<typename Base >
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( )
inline

Default constructor.

Definition at line 800 of file parse.hh.

template<typename Base >
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( const basic_symbol< Base > &  other)
inline

Copy constructor.

Definition at line 806 of file parse.hh.

References vcsn::detail::dot::variant< S >::copy(), and vcsn::detail::dot::parser::basic_symbol< Base >::value.

Here is the call graph for this function:

template<typename Base>
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type  t,
const location_type l 
)

Constructor for valueless symbols, and symbols from each type.

Definition at line 887 of file parse.hh.

template<typename Base>
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type  t,
const paths_t  v,
const location_type l 
)

Definition at line 894 of file parse.hh.

template<typename Base>
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type  t,
const states_t  v,
const location_type l 
)

Definition at line 901 of file parse.hh.

template<typename Base>
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type  t,
const string_t  v,
const location_type l 
)

Definition at line 908 of file parse.hh.

template<typename Base>
vcsn::detail::dot::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type  t,
const semantic_type v,
const location_type l 
)
inline

Constructor for symbols with semantic value.

Definition at line 846 of file parse.hh.

References vcsn::detail::dot::variant< S >::copy(), and vcsn::detail::dot::parser::basic_symbol< Base >::value.

Here is the call graph for this function:

template<typename Base >
vcsn::detail::dot::parser::basic_symbol< Base >::~basic_symbol ( )
inline

Definition at line 917 of file parse.hh.

Member Function Documentation

template<typename Base >
void vcsn::detail::dot::parser::basic_symbol< Base >::move ( basic_symbol< Base > &  s)
inline

Destructive move, s is emptied into this.

Definition at line 965 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().

template<typename Base>
basic_symbol& vcsn::detail::dot::parser::basic_symbol< Base >::operator= ( const basic_symbol< Base > &  other)
private

Assignment operator.

Member Data Documentation


The documentation for this struct was generated from the following file: