Awali
Another Weighted Automata library
|
An inner node implementing a weight. More...
#include <ratexp.hh>
Public Types | |
using | label_t = Label |
using | node_t = node< label_t, weight_t > |
using | super_type = inner< label_t, weight_t > |
using | value_t = typename super_type::value_t |
using | weight_t = Weight |
Public Types inherited from awali::sttc::rat::inner< Label, Weight > | |
using | label_t = Label |
using | super_type = node< label_t, weight_t > |
using | value_t = typename super_type::value_t |
using | weight_t = Weight |
Public Types inherited from awali::sttc::rat::node< Label, Weight > | |
using | const_visitor = sttc::rat::const_visitor< label_t, weight_t > |
using | label_t = Label |
using | node_t = rat::node< label_t, weight_t > |
using | ratexps_t = std::vector< value_t > |
using | value_t = std::shared_ptr< const node_t > |
using | weight_t = Weight |
using | wvalue_t = std::shared_ptr< node_t > |
Same as value_t, but writable. Use with care. More... | |
Public Types inherited from awali::sttc::rat::exp | |
using | type_t = rat::type_t |
The possible types of ratexps. More... | |
Public Member Functions | |
weight_node (const weight_node &that) | |
weight_node (const weight_t &w, value_t exp) | |
virtual void | accept (typename node_t::const_visitor &v) const override |
void | set_weight (const weight_t &w) |
const value_t | sub () const |
virtual type_t | type () const override |
The type of this node. More... | |
const weight_t & | weight () const |
Public Member Functions inherited from awali::sttc::rat::exp | |
virtual | ~exp ()=default |
bool | is_leaf () const |
Whether a leaf of the ratexp tree. More... | |
bool | is_unary () const |
Whether star, complement. More... | |
An inner node implementing a weight.
Implements the Composite Design Pattern.
using awali::sttc::rat::weight_node< Type, Label, Weight >::label_t = Label |
using awali::sttc::rat::weight_node< Type, Label, Weight >::node_t = node<label_t, weight_t> |
using awali::sttc::rat::weight_node< Type, Label, Weight >::super_type = inner<label_t, weight_t> |
using awali::sttc::rat::weight_node< Type, Label, Weight >::value_t = typename super_type::value_t |
using awali::sttc::rat::weight_node< Type, Label, Weight >::weight_t = Weight |
awali::sttc::rat::weight_node< Type, Label, Weight >::weight_node | ( | const weight_t & | w, |
value_t | exp | ||
) |
awali::sttc::rat::weight_node< Type, Label, Weight >::weight_node | ( | const weight_node< Type, Label, Weight > & | that | ) |
|
overridevirtual |
Implements awali::sttc::rat::node< Label, Weight >.
auto awali::sttc::rat::weight_node< Type, Label, Weight >::set_weight | ( | const weight_t & | w | ) |
auto awali::sttc::rat::weight_node< Type, Label, Weight >::sub |
|
overridevirtual |
The type of this node.
Implements awali::sttc::rat::exp.
auto awali::sttc::rat::weight_node< Type, Label, Weight >::weight |