![]() |
Vcsn
2.3a
Be Rational
|
An inner node implementing a weight. More...
#include <expression.hh>
Public Types | |
using | super_t = inner< Context > |
using | weight_t = weight_t_of< Context > |
using | value_t = typename super_t::value_t |
![]() | |
using | super_t = node< Context > |
using | value_t = typename super_t::value_t |
![]() | |
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 > |
![]() | |
using | type_t = rat::type_t |
The possible types of expressions. More... | |
Public Member Functions | |
virtual type_t | type () const |
The type of this node. More... | |
const value_t | sub () const |
const weight_t & | weight () const |
void | set_weight (weight_t w) |
weight_node (weight_t w, value_t exp) | |
weight_node (const weight_node &that) | |
virtual void | accept (typename super_t::const_visitor &v) const |
![]() | |
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 | |
value_t | sub_ |
weight_t | weight_ |
An inner node implementing a weight.
Implements the Composite Design Pattern.
Definition at line 264 of file expression.hh.
using vcsn::rat::weight_node< Type, Context >::super_t = inner<Context> |
Definition at line 272 of file expression.hh.
using vcsn::rat::weight_node< Type, Context >::value_t = typename super_t::value_t |
Definition at line 274 of file expression.hh.
using vcsn::rat::weight_node< Type, Context >::weight_t = weight_t_of<Context> |
Definition at line 273 of file expression.hh.
vcsn::rat::weight_node< Type, Context >::weight_node | ( | weight_t | w, |
value_t | exp | ||
) |
Definition at line 153 of file expression.hxx.
|
inline |
Definition at line 283 of file expression.hh.
|
virtual |
Implements vcsn::rat::node< Context >.
Definition at line 176 of file expression.hxx.
References vcsn::v.
auto vcsn::rat::weight_node< Type, Context >::set_weight | ( | weight_t | w | ) |
Definition at line 170 of file expression.hxx.
auto vcsn::rat::weight_node< Type, Context >::sub | ( | ) | const |
Definition at line 158 of file expression.hxx.
|
inlinevirtual |
auto vcsn::rat::weight_node< Type, Context >::weight | ( | ) | const |
Definition at line 164 of file expression.hxx.
|
private |
Definition at line 291 of file expression.hh.
|
private |
Definition at line 292 of file expression.hh.