Vcsn
2.0
Be Rational
|
#include <fwd.hh>
Classes | |
struct | stored_state_t |
Data stored for each state. More... | |
Public Types | |
using | context_t = Context |
using | automaton_nocv_t = mutable_automaton< context_t > |
The (shared pointer) type to use if we have to create an automaton of the same (underlying) type. More... | |
using | labelset_t = labelset_t_of< context_t > |
using | weightset_t = weightset_t_of< context_t > |
using | kind_t = typename context_t::kind_t |
using | labelset_ptr = typename context_t::labelset_ptr |
using | weightset_ptr = typename context_t::weightset_ptr |
using | state_t = unsigned |
Lightweight state handle (or index). More... | |
using | transition_t = unsigned |
Lightweight transition handle (or index). More... | |
using | label_t = typename labelset_t::value_t |
Transition label. More... | |
using | weight_t = typename weightset_t::value_t |
Transition weight. More... | |
using | states_output_t = container_filter_range< boost::integer_range< state_t >> |
using | transitions_output_t = container_filter_range< boost::integer_range< transition_t >> |
Public Member Functions | |
mutable_automaton_impl ()=delete | |
mutable_automaton_impl (const mutable_automaton_impl &)=delete | |
mutable_automaton_impl (const context_t &ctx) | |
mutable_automaton_impl (mutable_automaton_impl &&that) | |
mutable_automaton_impl & | operator= (mutable_automaton_impl &&that) |
std::string | vname (bool full=true) const |
const context_t & | context () const |
const weightset_ptr & | weightset () const |
const labelset_ptr & | labelset () const |
label_t | prepost_label () const |
size_t | num_all_states () const |
size_t | num_states () const |
size_t | num_initials () const |
size_t | num_finals () const |
size_t | num_transitions () const |
bool | has_state (state_t s) const |
bool | is_initial (state_t s) const |
bool | is_final (state_t s) const |
ATTRIBUTE_PURE weight_t | get_initial_weight (state_t s) const |
ATTRIBUTE_PURE weight_t | get_final_weight (state_t s) const |
transition_t | get_transition (state_t src, state_t dst, label_t l) const |
bool | has_transition (state_t src, state_t dst, label_t l) const |
bool | has_transition (transition_t t) const |
state_t | src_of (transition_t t) const |
state_t | dst_of (transition_t t) const |
label_t | label_of (transition_t t) const |
weight_t | weight_of (transition_t t) const |
state_t | new_state () |
std::ostream & | print_state (state_t s, std::ostream &o) const |
std::ostream & | print_state_name (state_t s, std::ostream &o, const std::string &="text", bool=true) const |
void | del_state (state_t s) |
void | set_initial (state_t s, weight_t w) |
void | set_initial (state_t s) |
weight_t | add_initial (state_t s, weight_t w) |
void | unset_initial (state_t s) |
void | set_final (state_t s, weight_t w) |
void | set_final (state_t s) |
weight_t | add_final (state_t s, weight_t w) |
void | unset_final (state_t s) |
void | del_transition (transition_t t) |
void | del_transition (state_t src, state_t dst, label_t l) |
Remove the transition (src, l, dst). More... | |
void | del_transition (state_t s, state_t d) |
Remove all the transitions between s and d. More... | |
transition_t | new_transition (state_t src, state_t dst, label_t l, weight_t w) |
Create a transition between two states. More... | |
template<typename A > | |
transition_t | new_transition_copy (state_t src, state_t dst, const A &aut, typename A::element_type::transition_t t, bool transpose=false) |
Copy the label of a transition between two states, creating a new transition. More... | |
transition_t | new_transition (state_t src, state_t dst, label_t l) |
Same as above, with weight one. More... | |
transition_t | set_transition (state_t src, state_t dst, label_t l, weight_t w) |
Set a transition between two states. More... | |
transition_t | set_transition (state_t src, state_t dst, label_t l) |
Same as above, with unit weight. More... | |
weight_t | add_transition (state_t src, state_t dst, label_t l, weight_t w) |
Add a transition between two states. More... | |
weight_t | add_transition (state_t src, state_t dst, label_t l) |
Same as above, with weight one. More... | |
template<typename A > | |
weight_t | add_transition_copy (state_t src, state_t dst, const A &aut, typename A::element_type::transition_t t, bool transpose=false) |
Add a transition between two states, copying the label from the given transition. More... | |
std::string | format_transition (transition_t t) const |
weight_t | set_weight (transition_t t, weight_t w) |
weight_t | add_weight (transition_t t, weight_t w) |
weight_t | lmul_weight (transition_t t, weight_t w) |
weight_t | rmul_weight (transition_t t, weight_t w) |
states_output_t | all_states () const |
All states including pre()/post(). More... | |
template<typename Pred > | |
states_output_t | all_states (Pred pred) const |
All states including pre()/post() that validate pred. More... | |
states_output_t | states () const |
All states excluding pre()/post(). More... | |
template<typename Pred > | |
transitions_output_t | all_transitions (Pred pred) const |
All the transition indexes between all states (including pre and post), that validate pred. More... | |
transitions_output_t | all_transitions () const |
All the transition indexes between all states (including pre and post). More... | |
transitions_output_t | transitions () const |
All the transition indexes between visible states. More... | |
container_filter_range< const tr_cont_t & > | initial_transitions () const |
Indexes of transitions to visible initial states. More... | |
container_filter_range< const tr_cont_t & > | final_transitions () const |
Indexes of transitions from visible final states. More... | |
container_range< const tr_cont_t & > | all_out (state_t s) const |
Indexes of all transitions leaving state s. More... | |
template<typename Pred > | |
container_filter_range< const tr_cont_t & > | all_out (state_t s, Pred pred) const |
Indexes of transitions leaving state s that validate the predicate. More... | |
container_filter_range< const tr_cont_t & > | out (state_t s) const |
Indexes of visible transitions leaving state s. More... | |
container_filter_range< const tr_cont_t & > | out (state_t s, const label_t &l) const |
Indexes of all transitions leaving state s on label l. More... | |
container_range< const tr_cont_t & > | all_in (state_t s) const |
Indexes of all transitions arriving to state s. More... | |
template<typename Pred > | |
container_filter_range< const tr_cont_t & > | all_in (state_t s, Pred pred) const |
Indexes of transitions entering state s that validate the predicate. More... | |
container_filter_range< const tr_cont_t & > | in (state_t s) const |
Indexes of visible transitions arriving to state s. More... | |
container_filter_range< const tr_cont_t & > | in (state_t s, const label_t &l) const |
Indexes of visible transitions arriving to state s on label l. More... | |
container_filter_range< const tr_cont_t & > | outin (state_t s, state_t d) const |
Indexes of visible transitions from state s to state d. More... | |
Static Public Member Functions | |
static std::string | sname () |
static constexpr state_t | pre () |
static constexpr state_t | post () |
static constexpr state_t | null_state () |
Invalid state. More... | |
static constexpr transition_t | null_transition () |
Invalid transition. More... | |
static constexpr bool | state_has_name (state_t) |
Protected Types | |
using | stored_transition_t = transition_tuple< state_t, label_t, weight_t > |
Data stored per transition. More... | |
using | tr_store_t = std::vector< stored_transition_t > |
All the automaton's transitions. More... | |
using | tr_cont_t = std::vector< transition_t > |
All the incoming/outgoing transition handles of a state. More... | |
using | st_store_t = std::vector< stored_state_t > |
All the automaton's states. More... | |
using | free_store_t = std::vector< unsigned > |
A list of unused indexes in the states/transitions tables. More... | |
Protected Member Functions | |
void | del_transition_from_src (transition_t t) |
Remove t from the outgoing transitions of the source state. More... | |
void | del_transition_from_dst (transition_t t) |
Remove t from the ingoing transition of the destination state. More... | |
void | del_transition_container (tr_cont_t &tc, bool from_succ) |
template<typename Pred > | |
states_output_t | state_range (state_t b, state_t e, Pred pred) const |
The range of state numbers in [b . More... | |
states_output_t | state_range (state_t b, state_t e) const |
The range of state numbers in [b .. e]. More... | |
Protected Attributes | |
context_t | ctx_ |
The algebraic type of this automaton. More... | |
st_store_t | states_ |
free_store_t | states_fs_ |
Free indexes in states_. More... | |
tr_store_t | transitions_ |
free_store_t | transitions_fs_ |
Free indexes in transitions_. More... | |
label_t | prepost_label_ |
Label for initial and final transitions. More... | |
using vcsn::detail::mutable_automaton_impl< Context >::automaton_nocv_t = mutable_automaton<context_t> |
The (shared pointer) type to use if we have to create an automaton of the same (underlying) type.
Definition at line 28 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::context_t = Context |
Definition at line 25 of file mutable-automaton.hh.
|
protected |
A list of unused indexes in the states/transitions tables.
Definition at line 68 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::kind_t = typename context_t::kind_t |
Definition at line 31 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::label_t = typename labelset_t::value_t |
Transition label.
Definition at line 41 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::labelset_ptr = typename context_t::labelset_ptr |
Definition at line 33 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::labelset_t = labelset_t_of<context_t> |
Definition at line 29 of file mutable-automaton.hh.
|
protected |
All the automaton's states.
Definition at line 65 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::state_t = unsigned |
Lightweight state handle (or index).
Definition at line 37 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::states_output_t = container_filter_range<boost::integer_range<state_t>> |
Definition at line 689 of file mutable-automaton.hh.
|
protected |
Data stored per transition.
Definition at line 50 of file mutable-automaton.hh.
|
protected |
All the incoming/outgoing transition handles of a state.
Definition at line 55 of file mutable-automaton.hh.
|
protected |
All the automaton's transitions.
Definition at line 53 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::transition_t = unsigned |
Lightweight transition handle (or index).
Definition at line 39 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::transitions_output_t = container_filter_range<boost::integer_range<transition_t>> |
Definition at line 737 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::weight_t = typename weightset_t::value_t |
Transition weight.
Definition at line 43 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::weightset_ptr = typename context_t::weightset_ptr |
Definition at line 34 of file mutable-automaton.hh.
using vcsn::detail::mutable_automaton_impl< Context >::weightset_t = weightset_t_of<context_t> |
Definition at line 30 of file mutable-automaton.hh.
|
delete |
|
delete |
|
inline |
Definition at line 82 of file mutable-automaton.hh.
|
inline |
Definition at line 88 of file mutable-automaton.hh.
|
inline |
Definition at line 409 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::post(), and vcsn::detail::mutable_automaton_impl< Context >::prepost_label_.
|
inline |
Definition at line 385 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::pre(), and vcsn::detail::mutable_automaton_impl< Context >::prepost_label_.
|
inline |
Add a transition between two states.
Merge with an existing one with same label.
src | source state |
dst | destination state |
l | label of the transition |
w | weight of the transition |
Definition at line 590 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_final(), vcsn::detail::mutable_automaton_impl< Context >::add_initial(), vcsn::detail::mutable_automaton_impl< Context >::add_transition(), and vcsn::detail::mutable_automaton_impl< Context >::add_transition_copy().
|
inline |
Same as above, with weight one.
Definition at line 605 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::add_transition(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Add a transition between two states, copying the label from the given transition.
Merge with an existing one with same label.
src | source state |
dst | destination state |
aut | the automaton whose transition will be copied. |
t | transition of aut whose label and weight are to copy |
transpose | whether label and weight should be transposed |
Definition at line 623 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::conv(), vcsn::detail::mutable_automaton_impl< Context >::labelset(), vcsn::transpose(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 668 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Indexes of all transitions arriving to state s.
Invalidated by del_transition() and del_state().
Definition at line 834 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_state(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::in().
|
inline |
Indexes of transitions entering state s that validate the predicate.
Invalidated by del_transition() and del_state().
Definition at line 846 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_state(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
|
inline |
Indexes of all transitions leaving state s.
Invalidated by del_transition() and del_state().
Definition at line 791 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_state(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::out(), and vcsn::detail::mutable_automaton_impl< Context >::outin().
|
inline |
Indexes of transitions leaving state s that validate the predicate.
Invalidated by del_transition() and del_state().
Definition at line 803 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_state(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
|
inline |
All states including pre()/post().
Guaranteed in increasing order.
Definition at line 720 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::state_range(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
|
inline |
All states including pre()/post() that validate pred.
Guaranteed in increasing order.
Definition at line 726 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::state_range(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
|
inline |
All the transition indexes between all states (including pre and post), that validate pred.
Definition at line 743 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::null_state(), vcsn::detail::mutable_automaton_impl< Context >::src_of(), and vcsn::detail::mutable_automaton_impl< Context >::transitions_.
|
inline |
All the transition indexes between all states (including pre and post).
Definition at line 758 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::transitions().
|
inline |
Definition at line 122 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::ctx_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::vname().
|
inline |
Definition at line 361 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition_container(), vcsn::detail::mutable_automaton_impl< Context >::has_state(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::stored_state_t::pred, vcsn::detail::mutable_automaton_impl< Context >::states_, vcsn::detail::mutable_automaton_impl< Context >::states_fs_, and vcsn::detail::mutable_automaton_impl< Context >::stored_state_t::succ.
|
inline |
Definition at line 424 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_dst(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_src(), vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_state(), vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_fs_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), and vcsn::detail::mutable_automaton_impl< Context >::set_weight().
|
inline |
Remove the transition (src, l, dst).
Definition at line 437 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), and vcsn::detail::mutable_automaton_impl< Context >::null_transition().
|
inline |
Remove all the transitions between s and d.
Definition at line 446 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition(), and vcsn::detail::mutable_automaton_impl< Context >::outin().
|
inlineprotected |
Definition at line 305 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_dst(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_src(), vcsn::detail::mutable_automaton_impl< Context >::null_state(), vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_fs_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_state().
|
inlineprotected |
Remove t from the ingoing transition of the destination state.
Definition at line 294 of file mutable-automaton.hh.
References vcsn::possibly_labeled_transition_tuple< State, Label >::dst, vcsn::find(), vcsn::detail::mutable_automaton_impl< Context >::states_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition(), and vcsn::detail::mutable_automaton_impl< Context >::del_transition_container().
|
inlineprotected |
Remove t from the outgoing transitions of the source state.
Definition at line 282 of file mutable-automaton.hh.
References vcsn::find(), vcsn::possibly_labeled_transition_tuple< State, Label >::src, vcsn::detail::mutable_automaton_impl< Context >::states_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition(), and vcsn::detail::mutable_automaton_impl< Context >::del_transition_container().
|
inline |
Definition at line 265 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::out(), vcsn::detail::mutable_automaton_impl< Context >::outin(), and vcsn::detail::mutable_automaton_impl< Context >::transitions().
|
inline |
Indexes of transitions from visible final states.
Definition at line 783 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::in(), and vcsn::detail::mutable_automaton_impl< Context >::post().
|
inline |
Definition at line 640 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::dst_of(), vcsn::detail::mutable_automaton_impl< Context >::label_of(), vcsn::detail::mutable_automaton_impl< Context >::labelset(), vcsn::detail::mutable_automaton_impl< Context >::src_of(), vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 199 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::prepost_label_, vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 188 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::pre(), vcsn::detail::mutable_automaton_impl< Context >::prepost_label_, vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 212 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::dst_of(), vcsn::detail::mutable_automaton_impl< Context >::has_state(), vcsn::detail::mutable_automaton_impl< Context >::label_of(), vcsn::detail::mutable_automaton_impl< Context >::labelset(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::src_of(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::has_transition(), and vcsn::detail::mutable_automaton_impl< Context >::set_transition().
|
inline |
Definition at line 162 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::states_, and vcsn::detail::mutable_automaton_impl< Context >::stored_state_t::succ.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_in(), vcsn::detail::mutable_automaton_impl< Context >::all_out(), vcsn::detail::mutable_automaton_impl< Context >::del_state(), and vcsn::detail::mutable_automaton_impl< Context >::get_transition().
|
inline |
Definition at line 247 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::get_transition(), and vcsn::detail::mutable_automaton_impl< Context >::null_transition().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::is_final(), vcsn::detail::mutable_automaton_impl< Context >::is_initial(), and vcsn::detail::mutable_automaton_impl< Context >::new_transition().
|
inline |
Definition at line 253 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::null_state(), and vcsn::detail::mutable_automaton_impl< Context >::transitions_.
|
inline |
Indexes of visible transitions arriving to state s.
Invalidated by del_transition() and del_state().
Definition at line 855 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_in(), vcsn::detail::mutable_automaton_impl< Context >::pre(), and vcsn::detail::mutable_automaton_impl< Context >::src_of().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::final_transitions().
|
inline |
Indexes of visible transitions arriving to state s on label l.
Invalidated by del_transition() and del_state().
Definition at line 865 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_in(), vcsn::detail::mutable_automaton_impl< Context >::label_of(), and vcsn::detail::mutable_automaton_impl< Context >::labelset().
|
inline |
Indexes of transitions to visible initial states.
Definition at line 776 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::out(), and vcsn::detail::mutable_automaton_impl< Context >::pre().
|
inline |
Definition at line 181 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::post(), and vcsn::detail::mutable_automaton_impl< Context >::prepost_label_.
|
inline |
Definition at line 175 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::pre(), and vcsn::detail::mutable_automaton_impl< Context >::prepost_label_.
|
inline |
Definition at line 266 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::in(), and vcsn::detail::mutable_automaton_impl< Context >::out().
|
inline |
Definition at line 124 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::ctx_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition_copy(), vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::in(), vcsn::detail::mutable_automaton_impl< Context >::new_transition_copy(), and vcsn::detail::mutable_automaton_impl< Context >::out().
|
inline |
Definition at line 674 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
|
inline |
Create a transition between two states.
There must not exist a previous transition with same (src, dst, l).
src | source state |
dst | destination state |
l | label of the transition |
w | weight of the transition |
Definition at line 466 of file mutable-automaton.hh.
References vcsn::possibly_labeled_transition_tuple< State, Label >::dst, vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::possibly_labeled_transition_tuple< State, Label >::set_label(), vcsn::transition_tuple< State, Label, Weight >::set_weight(), vcsn::possibly_labeled_transition_tuple< State, Label >::src, vcsn::detail::mutable_automaton_impl< Context >::states_, vcsn::detail::mutable_automaton_impl< Context >::transitions_, vcsn::detail::mutable_automaton_impl< Context >::transitions_fs_, and vcsn::detail::mutable_automaton_impl< Context >::weightset().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition_copy(), and vcsn::detail::mutable_automaton_impl< Context >::set_transition().
|
inline |
Same as above, with weight one.
Definition at line 529 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::new_transition(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Copy the label of a transition between two states, creating a new transition.
There must not exist a previous transition with same (src, dst, label_of(l)).
src | source state |
dst | destination state |
aut | the automaton whose transition will be copied. |
t | transition of aut whose label and weight are to copy |
transpose | whether label and weight should be transposed |
Definition at line 511 of file mutable-automaton.hh.
References vcsn::conv(), vcsn::detail::mutable_automaton_impl< Context >::labelset(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::transpose(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inlinestatic |
Invalid state.
Definition at line 136 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_transitions(), vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_container(), and vcsn::detail::mutable_automaton_impl< Context >::has_transition().
|
inlinestatic |
Invalid transition.
Definition at line 138 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::del_state(), vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::has_state(), vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), and vcsn::detail::mutable_automaton_impl< Context >::state_range().
|
inline |
Definition at line 148 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::states_, and vcsn::detail::mutable_automaton_impl< Context >::states_fs_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::num_states().
|
inline |
Definition at line 151 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::post(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::num_transitions().
|
inline |
Definition at line 150 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::pre(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::num_transitions().
|
inline |
Definition at line 149 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::num_all_states().
|
inline |
Definition at line 152 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::num_finals(), vcsn::detail::mutable_automaton_impl< Context >::num_initials(), vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_fs_.
|
inline |
Definition at line 95 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::ctx_, vcsn::detail::mutable_automaton_impl< Context >::prepost_label_, vcsn::detail::mutable_automaton_impl< Context >::states_, vcsn::detail::mutable_automaton_impl< Context >::states_fs_, vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::transitions_fs_.
|
inline |
Indexes of visible transitions leaving state s.
Invalidated by del_transition() and del_state().
Definition at line 812 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_out(), vcsn::detail::mutable_automaton_impl< Context >::dst_of(), and vcsn::detail::mutable_automaton_impl< Context >::post().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::initial_transitions().
|
inline |
Indexes of all transitions leaving state s on label l.
Invalidated by del_transition() and del_state().
Definition at line 822 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_out(), vcsn::detail::mutable_automaton_impl< Context >::label_of(), and vcsn::detail::mutable_automaton_impl< Context >::labelset().
|
inline |
Indexes of visible transitions from state s to state d.
Invalidated by del_transition() and del_state().
Definition at line 877 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_out(), and vcsn::detail::mutable_automaton_impl< Context >::dst_of().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition().
|
inlinestatic |
Definition at line 134 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_final(), vcsn::detail::mutable_automaton_impl< Context >::del_state(), vcsn::detail::mutable_automaton_impl< Context >::final_transitions(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::is_final(), vcsn::detail::mutable_automaton_impl< Context >::num_finals(), vcsn::detail::mutable_automaton_impl< Context >::out(), vcsn::detail::mutable_automaton_impl< Context >::set_final(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), vcsn::detail::mutable_automaton_impl< Context >::states(), and vcsn::detail::mutable_automaton_impl< Context >::transitions().
|
inlinestatic |
Definition at line 133 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_initial(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::in(), vcsn::detail::mutable_automaton_impl< Context >::initial_transitions(), vcsn::detail::mutable_automaton_impl< Context >::is_initial(), vcsn::detail::mutable_automaton_impl< Context >::num_initials(), vcsn::detail::mutable_automaton_impl< Context >::set_initial(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), and vcsn::detail::mutable_automaton_impl< Context >::transitions().
|
inline |
Definition at line 140 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::prepost_label_.
|
inline |
Definition at line 341 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::print_state_name().
|
inline |
Definition at line 347 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::print_state().
|
inline |
Definition at line 680 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::weight_of(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 397 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::prepost_label_, and vcsn::detail::mutable_automaton_impl< Context >::set_transition().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::set_final(), and vcsn::detail::mutable_automaton_impl< Context >::unset_final().
|
inline |
Definition at line 403 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_final(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 373 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::pre(), vcsn::detail::mutable_automaton_impl< Context >::prepost_label_, and vcsn::detail::mutable_automaton_impl< Context >::set_transition().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::set_initial(), and vcsn::detail::mutable_automaton_impl< Context >::unset_initial().
|
inline |
Definition at line 379 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_initial(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Set a transition between two states.
Override any possible existing transition with same states and label.
src | source state |
dst | destination state |
l | label of the transition |
w | weight of the transition |
Definition at line 545 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::pre(), vcsn::possibly_labeled_transition_tuple< State, Label >::set_label(), vcsn::transition_tuple< State, Label, Weight >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::weightset().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::set_final(), vcsn::detail::mutable_automaton_impl< Context >::set_initial(), and vcsn::detail::mutable_automaton_impl< Context >::set_transition().
|
inline |
Same as above, with unit weight.
Definition at line 574 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_transition(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 658 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::transitions_, and vcsn::detail::mutable_automaton_impl< Context >::weightset().
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::add_weight(), vcsn::detail::mutable_automaton_impl< Context >::lmul_weight(), and vcsn::detail::mutable_automaton_impl< Context >::rmul_weight().
|
inlinestatic |
Definition at line 112 of file mutable-automaton.hh.
References vcsn::sname().
|
inline |
Definition at line 264 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_transitions(), vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::in(), and vcsn::detail::mutable_automaton_impl< Context >::transitions().
|
inlinestatic |
Definition at line 355 of file mutable-automaton.hh.
|
inlineprotected |
The range of state numbers in [b .
. e] that validate the predicate pred.
Definition at line 696 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::null_transition(), vcsn::detail::mutable_automaton_impl< Context >::states_, and vcsn::detail::mutable_automaton_impl< Context >::stored_state_t::succ.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_states(), vcsn::detail::mutable_automaton_impl< Context >::state_range(), and vcsn::detail::mutable_automaton_impl< Context >::states().
|
inlineprotected |
The range of state numbers in [b .. e].
Definition at line 711 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::state_range().
|
inline |
All states excluding pre()/post().
Guaranteed in increasing order.
Definition at line 734 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::state_range(), and vcsn::detail::mutable_automaton_impl< Context >::states_.
|
inline |
All the transition indexes between visible states.
Definition at line 765 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::all_transitions(), vcsn::detail::mutable_automaton_impl< Context >::dst_of(), vcsn::detail::mutable_automaton_impl< Context >::post(), vcsn::detail::mutable_automaton_impl< Context >::pre(), and vcsn::detail::mutable_automaton_impl< Context >::src_of().
|
inline |
Definition at line 415 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_final(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 391 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::set_initial(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
inline |
Definition at line 117 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::context().
|
inline |
Definition at line 271 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::transitions_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::add_weight(), vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::lmul_weight(), and vcsn::detail::mutable_automaton_impl< Context >::rmul_weight().
|
inline |
Definition at line 123 of file mutable-automaton.hh.
References vcsn::detail::mutable_automaton_impl< Context >::ctx_.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_transition(), vcsn::detail::mutable_automaton_impl< Context >::add_transition_copy(), vcsn::detail::mutable_automaton_impl< Context >::add_weight(), vcsn::detail::mutable_automaton_impl< Context >::format_transition(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::lmul_weight(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::new_transition_copy(), vcsn::detail::mutable_automaton_impl< Context >::rmul_weight(), vcsn::detail::mutable_automaton_impl< Context >::set_final(), vcsn::detail::mutable_automaton_impl< Context >::set_initial(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::unset_final(), and vcsn::detail::mutable_automaton_impl< Context >::unset_initial().
|
protected |
The algebraic type of this automaton.
Definition at line 47 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::context(), vcsn::detail::mutable_automaton_impl< Context >::labelset(), vcsn::detail::mutable_automaton_impl< Context >::operator=(), and vcsn::detail::mutable_automaton_impl< Context >::weightset().
|
protected |
Label for initial and final transitions.
Definition at line 77 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::add_final(), vcsn::detail::mutable_automaton_impl< Context >::add_initial(), vcsn::detail::mutable_automaton_impl< Context >::get_final_weight(), vcsn::detail::mutable_automaton_impl< Context >::get_initial_weight(), vcsn::detail::mutable_automaton_impl< Context >::is_final(), vcsn::detail::mutable_automaton_impl< Context >::is_initial(), vcsn::detail::mutable_automaton_impl< Context >::operator=(), vcsn::detail::mutable_automaton_impl< Context >::prepost_label(), vcsn::detail::mutable_automaton_impl< Context >::set_final(), and vcsn::detail::mutable_automaton_impl< Context >::set_initial().
|
protected |
Definition at line 70 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_in(), vcsn::detail::mutable_automaton_impl< Context >::all_out(), vcsn::detail::mutable_automaton_impl< Context >::all_states(), vcsn::detail::mutable_automaton_impl< Context >::del_state(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_dst(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_src(), vcsn::detail::mutable_automaton_impl< Context >::get_transition(), vcsn::detail::mutable_automaton_impl< Context >::has_state(), vcsn::detail::mutable_automaton_impl< Context >::new_state(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::num_all_states(), vcsn::detail::mutable_automaton_impl< Context >::num_finals(), vcsn::detail::mutable_automaton_impl< Context >::num_initials(), vcsn::detail::mutable_automaton_impl< Context >::operator=(), vcsn::detail::mutable_automaton_impl< Context >::state_range(), and vcsn::detail::mutable_automaton_impl< Context >::states().
|
protected |
Free indexes in states_.
Definition at line 72 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_state(), vcsn::detail::mutable_automaton_impl< Context >::new_state(), vcsn::detail::mutable_automaton_impl< Context >::num_all_states(), and vcsn::detail::mutable_automaton_impl< Context >::operator=().
|
protected |
Definition at line 73 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::all_transitions(), vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_container(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_dst(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_from_src(), vcsn::detail::mutable_automaton_impl< Context >::dst_of(), vcsn::detail::mutable_automaton_impl< Context >::has_transition(), vcsn::detail::mutable_automaton_impl< Context >::label_of(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::num_transitions(), vcsn::detail::mutable_automaton_impl< Context >::operator=(), vcsn::detail::mutable_automaton_impl< Context >::set_transition(), vcsn::detail::mutable_automaton_impl< Context >::set_weight(), vcsn::detail::mutable_automaton_impl< Context >::src_of(), and vcsn::detail::mutable_automaton_impl< Context >::weight_of().
|
protected |
Free indexes in transitions_.
Definition at line 75 of file mutable-automaton.hh.
Referenced by vcsn::detail::mutable_automaton_impl< Context >::del_transition(), vcsn::detail::mutable_automaton_impl< Context >::del_transition_container(), vcsn::detail::mutable_automaton_impl< Context >::new_transition(), vcsn::detail::mutable_automaton_impl< Context >::num_transitions(), and vcsn::detail::mutable_automaton_impl< Context >::operator=().