Files | |
file | automata_ops.hh |
This file holds the default operations for the elements of the automata set. | |
Default operation on automata. | |
template<typename S, typename R, typename T> | |
R | op_convert (const AutomataBase< S > &se, SELECTOR(R), const T &data) |
Default conversion between value types with computation. | |
template<typename S, typename T> | |
const T & | op_convert (const AutomataBase< S > &, SELECTOR(T), const T &from_data) |
Default conversion between value types with computation. | |
template<typename S, typename T, typename U> | |
void | op_assign (const AutomataBase< S > &s, T &dst, const U &src) |
Assignement operator between two implementations of a Structure<S>. | |
template<typename S, typename T> | |
void | op_assign (const AutomataBase< S > &concept, T &dst, const T &src) |
Default conversion between value types with computation. | |
template<class S, class T> | |
const automaton_traits< T > ::tag_t & | op_get_tag (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::tag_t & | op_get_tag (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
const automaton_traits< T > ::geometry_t & | op_get_geometry (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::geometry_t & | op_get_geometry (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_exists (const AutomataBase< S > &s, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::states_t | op_states (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::hstate_t | op_get_state (const AutomataBase< S > &, const T &, int state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::transitions_t | op_transitions (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::initial_support_t | op_initial (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::final_support_t | op_final (const AutomataBase< S > &, const T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_set_initial (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &state, const typename Element< S, T >::series_set_elt_t &s) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::series_set_elt_t | op_get_initial (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::hstate_t &state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_is_initial (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::hstate_t &state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_set_final (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &state, const typename Element< S, T >::series_set_elt_t &s) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::series_set_elt_t | op_get_final (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::hstate_t &state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_is_final (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::hstate_t &state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_set_initial (const AutomataBase< S > &, T &, int state, const typename Element< S, T >::series_set_elt_t &s) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::series_set_elt_t | op_get_initial (const AutomataBase< S > &, const T &, int state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_is_initial (const AutomataBase< S > &, const T &, int state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_set_final (const AutomataBase< S > &, T &, int state, const typename Element< S, T >::series_set_elt_t &s) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::series_set_elt_t | op_get_final (const AutomataBase< S > &, const T &, int state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_is_final (const AutomataBase< S > &, const T &, int state) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_clear_initial (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_clear_final (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::hstate_t | op_add_state (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::hstate_t | op_choose_state (const AutomataBase< S > &, T &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_transition (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &from, const typename automaton_traits< T >::hstate_t &to, const typename Element< S, T >::label_t &label) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_weighted_transition (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &from, const typename automaton_traits< T >::hstate_t &to, const typename Element< S, T >::semiring_elt_t &w, const typename Element< S, T >::monoid_elt_value_t &m) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_series_transition (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &from, const typename automaton_traits< T >::hstate_t &to, const typename Element< S, T >::series_set_elt_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_spontaneous (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &from, const typename automaton_traits< T >::hstate_t &to, const typename Element< S, T >::semiring_elt_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_letter_transition (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &from, const typename automaton_traits< T >::hstate_t &to, const typename Element< S, T >::letter_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_transition (const AutomataBase< S > &, T &, int from, int to, const typename Element< S, T >::label_t &label) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_weighted_transition (const AutomataBase< S > &, T &, int from, int to, const typename Element< S, T >::semiring_elt_t &w, const typename Element< S, T >::monoid_elt_value_t &m) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_series_transition (const AutomataBase< S > &, T &, int from, int to, const typename Element< S, T >::series_set_elt_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_spontaneous (const AutomataBase< S > &, T &, int from, int to, const typename Element< S, T >::semiring_elt_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T > ::htransition_t | op_add_letter_transition (const AutomataBase< S > &, T &, int from, int to, const typename Element< S, T >::letter_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_update (const AutomataBase< S > &, T &, const typename automaton_traits< T >::htransition_t &, const typename Element< S, T >::label_t &l) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_del_state (const AutomataBase< S > &, T &, const typename automaton_traits< T >::hstate_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_del_state (const AutomataBase< S > &, T &, int) |
Default conversion between value types with computation. | |
template<class S, class T> | |
void | op_del_transition (const AutomataBase< S > &, T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_has_state (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::hstate_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_has_state (const AutomataBase< S > &, const T &, int) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_has_transition (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::hstate_t | op_src_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
automaton_traits< T >::hstate_t | op_dst_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::label_t | op_label_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
const Element< S, T > ::series_set_elt_t | op_series_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T > ::series_set_elt_value_t | op_series_value_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::monoid_elt_t | op_word_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::semiring_elt_t | op_weight_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::monoid_elt_value_t | op_word_value_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
Element< S, T >::letter_t | op_letter_of (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
template<class S, class T> | |
bool | op_is_spontaneous (const AutomataBase< S > &, const T &, const typename automaton_traits< T >::htransition_t &) |
Default conversion between value types with computation. | |
Functions | |
template<class S, class T, typename OutputIterator, typename Kind> | |
void | op_delta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
store the output transitions of the state 'from' using 'res'. | |
template<class S, class T, typename OutputIterator, typename L, typename Kind> | |
void | op_delta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, const L &query, delta_kind::kind< Kind > k) |
Delta using a query, with iterator output. | |
template<class S, class T, typename OutputIterator, typename L, typename Kind> | |
void | op_letter_delta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, const L &letter, delta_kind::kind< Kind > k) |
Delta on a letter, with iterator output. | |
template<class S, class T, typename OutputIterator, typename Kind> | |
void | op_spontaneous_delta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
Store the output spontaneous transitions. | |
template<class S, class T, typename Container, typename Kind> | |
void | op_deltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
Store the output transitions of the state 'from' in the container 'res'. | |
template<class S, class T, typename Container, typename L, typename Kind> | |
void | op_deltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, const L &query, delta_kind::kind< Kind > k) |
Delta using a query, with container output. | |
template<class S, class T, typename Container, typename L, typename Kind> | |
void | op_letter_deltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, const L &letter, delta_kind::kind< Kind > k) |
Delta on a letter, with container output. | |
template<class S, class T, class Container, typename Kind> | |
void | op_spontaneous_deltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
Store the output op_spontaneous transitions. | |
template<class S, class T, typename OutputIterator, typename Kind> | |
void | op_rdelta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
Store the output transitions of the state 'from' using 'res'. | |
template<class S, class T, typename OutputIterator, typename L, typename Kind> | |
void | op_rdelta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, const L &query, delta_kind::kind< Kind > k) |
Reverse delta using a query, with iterator output. | |
template<class S, class T, typename OutputIterator, typename L, typename Kind> | |
void | op_letter_rdelta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, const L &letter, delta_kind::kind< Kind > k) |
Reverse delta on a letter, with iterator output. | |
template<class S, class T, typename OutputIterator, typename Kind> | |
void | op_spontaneous_rdelta (const AutomataBase< S > &, const T &, OutputIterator res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
Store the output op_spontaneous transitions. | |
template<class S, class T, typename Container, typename Kind> | |
void | op_rdeltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
store the output transitions of the state 'from' in the container 'res'. | |
template<class S, class T, typename Container, typename L, typename Kind> | |
void | op_rdeltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, const L &query, delta_kind::kind< Kind > k) |
Reverse delta using a query, with container output. | |
template<class S, class T, typename Container, typename L, typename Kind> | |
void | op_letter_rdeltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, const L &letter, delta_kind::kind< Kind > k) |
Reverse delta on a letter, with container output. | |
template<class S, class T, typename Container, typename Kind> | |
void | op_spontaneous_rdeltac (const AutomataBase< S > &, const T &, Container &res, const typename automaton_traits< T >::hstate_t &from, delta_kind::kind< Kind > k) |
store the output op_spontaneous transitions. |
void op_delta | ( | const AutomataBase< S > & | , | |
const T & | v, | |||
OutputIterator | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | query, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Delta using a query, with iterator output.
Store the output transitions of the state 'from' where query(label(e)) is true using 'res'.
Definition at line 694 of file automata_ops.hxx.
void op_letter_delta | ( | const AutomataBase< S > & | s, | |
const T & | v, | |||
OutputIterator | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | letter, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Delta on a letter, with iterator output.
Store the output transitions of the state 'from' where the label matches the letter.
Definition at line 716 of file automata_ops.hxx.
References Structure< Self >::self().
Referenced by vcsn::op_letter_delta(), and vcsn::op_letter_rdelta().
void op_deltac | ( | const AutomataBase< S > & | , | |
const T & | v, | |||
Container & | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | query, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Delta using a query, with container output.
Store the output transitions of the state 'from' where query(label(e)) is true in the container 'res'.
Definition at line 785 of file automata_ops.hxx.
void op_letter_deltac | ( | const AutomataBase< S > & | s, | |
const T & | v, | |||
Container & | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | letter, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Delta on a letter, with container output.
Store the output transitions of the state 'from' where query(label(e)) is true in the container 'res'.
Definition at line 810 of file automata_ops.hxx.
References Structure< Self >::self().
Referenced by vcsn::op_letter_deltac(), and vcsn::op_letter_rdeltac().
void op_rdelta | ( | const AutomataBase< S > & | , | |
const T & | v, | |||
OutputIterator | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | query, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Reverse delta using a query, with iterator output.
Store the output transitions of the state 'from' where query(label(e)) is true using 'res'.
Definition at line 974 of file automata_ops.hxx.
void op_letter_rdelta | ( | const AutomataBase< S > & | s, | |
const T & | v, | |||
OutputIterator | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | letter, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Reverse delta on a letter, with iterator output.
Store the output transitions of the state 'from' where the label matches the letter.
Definition at line 996 of file automata_ops.hxx.
References Structure< Self >::self().
Referenced by vcsn::op_letter_delta(), and vcsn::op_letter_rdelta().
void op_rdeltac | ( | const AutomataBase< S > & | , | |
const T & | v, | |||
Container & | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | query, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Reverse delta using a query, with container output.
Store the output transitions of the state 'from' where query(label(e)) is true in the container 'res'.
Definition at line 1065 of file automata_ops.hxx.
void op_letter_rdeltac | ( | const AutomataBase< S > & | s, | |
const T & | v, | |||
Container & | res, | |||
const typename automaton_traits< T >::hstate_t & | from, | |||
const L & | letter, | |||
delta_kind::kind< Kind > | k | |||
) | [inline] |
Reverse delta on a letter, with container output.
Store the output transitions of the state 'from' where query(label(e)) is true in the container 'res'.
Definition at line 1090 of file automata_ops.hxx.
References Structure< Self >::self().
Referenced by vcsn::op_letter_deltac(), and vcsn::op_letter_rdeltac().