Awali
Another Weighted Automata library
|
carries the algebraic settings of automata More...
#include <context.hh>
Public Types | |
enum | { is_lal = std::is_same<kind_t, labels_are_letters>::value , is_lan = std::is_same<kind_t, labels_are_nullable>::value , is_lao = std::is_same<kind_t, labels_are_one>::value , is_lar = std::is_same<kind_t, labels_are_ratexps>::value , is_lat = std::is_same<kind_t, labels_are_tuples>::value , is_law = std::is_same<kind_t, labels_are_words>::value } |
using | const_visitor = sttc::rat::const_visitor< label_t, weight_t > |
Type of RatExp visitor. More... | |
using | kind_t = typename labelset_t::kind_t |
using | label_t = typename labelset_t::value_t |
Type of transition labels, and type of RatExp atoms. More... | |
using | labelset_ptr = std::shared_ptr< const labelset_t > |
using | labelset_t = LabelSet |
using | node_t = rat::node< label_t, weight_t > |
Type of RatExp ratexps objects. More... | |
using | ratexp_t = std::shared_ptr< const node_t > |
using | weight_t = typename weightset_t::value_t |
Type of weights. More... | |
using | weightset_ptr = std::shared_ptr< const weightset_t > |
using | weightset_t = WeightSet |
Public Member Functions | |
template<typename LabelSet2 = labelset_t> | |
context () | |
Build a context whose labelset constructor takes no argument. More... | |
context (const context &that) | |
context (const labelset_ptr &ls, const weightset_ptr &ws) | |
context (const labelset_t &ls, const weightset_t &ws={}) | |
Build a context. More... | |
template<typename LabelSet2 = labelset_t> | |
context (const std::initializer_list< typename LabelSet2::letter_t > &gs, const weightset_t &ws={}) | |
Build a context. More... | |
const labelset_ptr & | labelset () const |
context & | operator= (const context &other)=default |
std::ostream & | print_set (std::ostream &o, const std::string &format="text") const |
template<unsigned version = version::fsm_json> | |
json::node_t * | to_json () const |
std::string | vname (bool full=true) const |
const weightset_ptr & | weightset () const |
Static Public Member Functions | |
static constexpr bool | has_one () |
static context | make (std::istream &is) |
Build from the description in is. More... | |
static std::string | sname () |
The name of this context, built from its parameters. More... | |
carries the algebraic settings of automata
LabelSet | the type that manages labels |
WeightSet | the type that manages weights |
using awali::sttc::context< LabelSet, WeightSet >::const_visitor = sttc::rat::const_visitor<label_t, weight_t> |
Type of RatExp visitor.
using awali::sttc::context< LabelSet, WeightSet >::kind_t = typename labelset_t::kind_t |
using awali::sttc::context< LabelSet, WeightSet >::label_t = typename labelset_t::value_t |
Type of transition labels, and type of RatExp atoms.
using awali::sttc::context< LabelSet, WeightSet >::labelset_ptr = std::shared_ptr<const labelset_t> |
using awali::sttc::context< LabelSet, WeightSet >::labelset_t = LabelSet |
using awali::sttc::context< LabelSet, WeightSet >::node_t = rat::node<label_t, weight_t> |
Type of RatExp ratexps objects.
using awali::sttc::context< LabelSet, WeightSet >::ratexp_t = std::shared_ptr<const node_t> |
using awali::sttc::context< LabelSet, WeightSet >::weight_t = typename weightset_t::value_t |
Type of weights.
using awali::sttc::context< LabelSet, WeightSet >::weightset_ptr = std::shared_ptr<const weightset_t> |
using awali::sttc::context< LabelSet, WeightSet >::weightset_t = WeightSet |
anonymous enum |
awali::sttc::context< LabelSet, WeightSet >::context | ( | const context< LabelSet, WeightSet > & | that | ) |
awali::sttc::context< LabelSet, WeightSet >::context | ( | const labelset_ptr & | ls, |
const weightset_ptr & | ws | ||
) |
ls | the labelset |
ws | the weightset |
awali::sttc::context< LabelSet, WeightSet >::context | ( | const labelset_t & | ls, |
const weightset_t & | ws = {} |
||
) |
Build a context.
ls | the labelset |
ws | the weightset |
awali::sttc::context< LabelSet, WeightSet >::context | ( | const std::initializer_list< typename LabelSet2::letter_t > & | gs, |
const weightset_t & | ws = {} |
||
) |
Build a context.
gs | the generators |
ws | the weightset |
awali::sttc::context< LabelSet, WeightSet >::context | ( | ) |
Build a context whose labelset constructor takes no argument.
|
staticconstexpr |
const labelset_ptr& awali::sttc::context< LabelSet, WeightSet >::labelset | ( | ) | const |
|
static |
Build from the description in is.
|
default |
std::ostream& awali::sttc::context< LabelSet, WeightSet >::print_set | ( | std::ostream & | o, |
const std::string & | format = "text" |
||
) | const |
|
static |
The name of this context, built from its parameters.
E.g., "lal_char_b", "law_char_zmin".
json::node_t* awali::sttc::context< LabelSet, WeightSet >::to_json | ( | ) | const |
std::string awali::sttc::context< LabelSet, WeightSet >::vname | ( | bool | full = true | ) | const |
const weightset_ptr& awali::sttc::context< LabelSet, WeightSet >::weightset | ( | ) | const |