Vcsn  2.3a
Be Rational
vcsn::rat::atom< Context > Class Template Reference

#include <expression.hh>

Inheritance diagram for vcsn::rat::atom< Context >:
Collaboration diagram for vcsn::rat::atom< Context >:

Public Types

using super_t = leaf< Context >
 
using label_t = label_t_of< Context >
 
using type_t = typename super_t::type_t
 
using value_t = typename super_t::value_t
 
- Public Types inherited from vcsn::rat::leaf< Context >
using super_t = node< Context >
 
- Public Types inherited from vcsn::rat::node< Context >
using context_t = Context
 
using node_t = rat::node< context_t >
 
using value_t = std::shared_ptr< const node_t >
 An expression usable with value semantics. More...
 
using values_t = std::vector< value_t >
 
using const_visitor = vcsn::rat::const_visitor< context_t >
 
- Public Types inherited from vcsn::rat::exp
using type_t = rat::type_t
 The possible types of expressions. More...
 

Public Member Functions

 atom (const label_t &value)
 
virtual type_t type () const
 The type of this node. More...
 
virtual void accept (typename super_t::const_visitor &v) const
 
const label_tvalue () const
 
- Public Member Functions inherited from vcsn::rat::exp
virtual ~exp ()=default
 
bool is_unary () const
 Whether star, complement. More...
 
bool is_leaf () const
 Whether a leaf of the expression tree. More...
 

Private Attributes

label_t value_
 

Detailed Description

template<typename Context>
class vcsn::rat::atom< Context >

Definition at line 327 of file expression.hh.

Member Typedef Documentation

template<typename Context >
using vcsn::rat::atom< Context >::label_t = label_t_of<Context>

Definition at line 332 of file expression.hh.

template<typename Context >
using vcsn::rat::atom< Context >::super_t = leaf<Context>

Definition at line 331 of file expression.hh.

template<typename Context >
using vcsn::rat::atom< Context >::type_t = typename super_t::type_t

Definition at line 333 of file expression.hh.

template<typename Context >
using vcsn::rat::atom< Context >::value_t = typename super_t::value_t

Definition at line 334 of file expression.hh.

Constructor & Destructor Documentation

template<typename Context >
vcsn::rat::atom< Context >::atom ( const label_t value)

Definition at line 24 of file expression.hxx.

Member Function Documentation

template<typename Context >
auto vcsn::rat::atom< Context >::accept ( typename super_t::const_visitor v) const
virtual

Implements vcsn::rat::node< Context >.

Definition at line 28 of file expression.hxx.

References vcsn::v.

template<typename Context >
virtual type_t vcsn::rat::atom< Context >::type ( ) const
inlinevirtual

The type of this node.

Implements vcsn::rat::exp.

Definition at line 338 of file expression.hh.

References vcsn::rat::atom.

template<typename Context >
auto vcsn::rat::atom< Context >::value ( ) const

Member Data Documentation

template<typename Context >
label_t vcsn::rat::atom< Context >::value_
private

Definition at line 344 of file expression.hh.


The documentation for this class was generated from the following files: