Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Data Fields
step::parser::basic_symbol< Base > Struct Template Reference

A complete symbol. More...

#include <step.tab.hxx>

Inheritance diagram for step::parser::basic_symbol< Base >:
Inheritance graph
[legend]

Public Types

typedef Base super_type
 Alias to Base.
 

Public Member Functions

 basic_symbol ()
 Default constructor.
 
 basic_symbol (const basic_symbol &that)
 Copy constructor.
 
 basic_symbol (typename Base::kind_type t)
 Constructor for valueless symbols.
 
 basic_symbol (typename Base::kind_type t, YY_RVREF(semantic_type) v)
 Constructor for symbols with semantic value.
 
 ~basic_symbol ()
 Destroy the symbol.
 
void clear ()
 Destroy contents, and record that is empty.
 
std::string name () const YY_NOEXCEPT
 The user-facing name of this symbol.
 
symbol_kind_type type_get () const YY_NOEXCEPT
 Backward compatibility (Bison 3.6).
 
bool empty () const YY_NOEXCEPT
 Whether empty.
 
void move (basic_symbol &s)
 Destructive move, s is emptied into this.
 

Data Fields

semantic_type value
 The semantic value.
 

Detailed Description

template<typename Base>
struct step::parser::basic_symbol< Base >

A complete symbol.

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

Provide access to semantic value.

Member Typedef Documentation

◆ super_type

template<typename Base >
typedef Base step::parser::basic_symbol< Base >::super_type

Alias to Base.

Constructor & Destructor Documentation

◆ basic_symbol() [1/4]

template<typename Base >
step::parser::basic_symbol< Base >::basic_symbol ( )
inline

Default constructor.

◆ basic_symbol() [2/4]

template<typename Base >
step::parser::basic_symbol< Base >::basic_symbol ( const basic_symbol< Base > & that)

Copy constructor.

◆ basic_symbol() [3/4]

template<typename Base >
step::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type t)

Constructor for valueless symbols.

◆ basic_symbol() [4/4]

template<typename Base >
step::parser::basic_symbol< Base >::basic_symbol ( typename Base::kind_type t,
YY_RVREF(semantic_type) v )

Constructor for symbols with semantic value.

◆ ~basic_symbol()

template<typename Base >
step::parser::basic_symbol< Base >::~basic_symbol ( )
inline

Destroy the symbol.

Member Function Documentation

◆ clear()

template<typename Base >
void step::parser::basic_symbol< Base >::clear ( )
inline

Destroy contents, and record that is empty.

◆ empty()

template<typename Base >
bool step::parser::basic_symbol< Base >::empty ( ) const

Whether empty.

◆ move()

template<typename Base >
void step::parser::basic_symbol< Base >::move ( basic_symbol< Base > & s)

Destructive move, s is emptied into this.

◆ name()

template<typename Base >
std::string step::parser::basic_symbol< Base >::name ( ) const
inline

The user-facing name of this symbol.

◆ type_get()

template<typename Base >
symbol_kind_type step::parser::basic_symbol< Base >::type_get ( ) const

Backward compatibility (Bison 3.6).

Field Documentation

◆ value

The semantic value.


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