Vcsn
2.0
Be Rational
|
An inner node with multiple children. More...
#include <fwd.hh>
Public Types | |
using | super_t = inner< Context > |
using | value_t = typename super_t::value_t |
using | values_t = typename super_t::values_t |
using | const_iterator = typename values_t::const_iterator |
using | iterator = const_iterator |
using | const_reverse_iterator = typename values_t::const_reverse_iterator |
using | reverse_iterator = const_reverse_iterator |
Public Types inherited from vcsn::rat::inner< Context > | |
using | super_t = node< Context > |
using | value_t = typename super_t::value_t |
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 > |
A ratexp 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 ratexps. More... | |
Public Member Functions | |
virtual type_t | type () const |
The type of this node. More... | |
const_iterator | begin () const |
const_iterator | end () const |
const_reverse_iterator | rbegin () const |
const_reverse_iterator | rend () const |
size_t | size () const |
const value_t | operator[] (size_t n) const |
Access the n-th element. More... | |
const value_t | head () const |
The first item of this variadic. More... | |
const value_t | back () const |
The last item of this variadic. More... | |
auto | tail () const -> decltype(boost::make_iterator_range(*this, 1, 0)) |
The non-first items. More... | |
variadic (const values_t &ns=values_t()) | |
variadic (const variadic &that) | |
values_t | subs () const |
Return a copy of children. More... | |
virtual void | accept (typename super_t::const_visitor &v) 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 ratexp tree. More... | |
Private Attributes | |
values_t | sub_ |
An inner node with multiple children.
Implements the Composite Design Pattern.
using vcsn::rat::variadic< Type, Context >::const_iterator = typename values_t::const_iterator |
using vcsn::rat::variadic< Type, Context >::const_reverse_iterator = typename values_t::const_reverse_iterator |
using vcsn::rat::variadic< Type, Context >::iterator = const_iterator |
using vcsn::rat::variadic< Type, Context >::reverse_iterator = const_reverse_iterator |
using vcsn::rat::variadic< Type, Context >::super_t = inner<Context> |
using vcsn::rat::variadic< Type, Context >::value_t = typename super_t::value_t |
using vcsn::rat::variadic< Type, Context >::values_t = typename super_t::values_t |
|
inline |
Definition at line 63 of file ratexp.hxx.
|
inline |
|
inlinevirtual |
Implements vcsn::rat::node< Context >.
Definition at line 128 of file ratexp.hxx.
|
inline |
The last item of this variadic.
Definition at line 110 of file ratexp.hxx.
|
inline |
Definition at line 68 of file ratexp.hxx.
|
inline |
Definition at line 74 of file ratexp.hxx.
|
inline |
The first item of this variadic.
Definition at line 104 of file ratexp.hxx.
|
inline |
|
inline |
Definition at line 80 of file ratexp.hxx.
|
inline |
Definition at line 86 of file ratexp.hxx.
|
inline |
Definition at line 92 of file ratexp.hxx.
|
inline |
Return a copy of children.
Definition at line 122 of file ratexp.hxx.
|
inline |
The non-first items.
Definition at line 116 of file ratexp.hxx.
|
inlinevirtual |
|
private |