Collaboration diagram for product:
![]() |
Modules | |
product | |
Classes | |
struct | FreeMonoidBase |
Structural element for free monoid. More... | |
struct | dynamic_traits< algebra::FreeMonoidBase< Self > > |
struct | virtual_types< algebra::FreeMonoidBase< S > > |
struct | MetaElement< algebra::FreeMonoidBase< Self >, T > |
Element of a free monoid i.e. words. More... | |
struct | FreeMonoidProduct |
Implementation of a monoid which is a product of two free monoids. More... | |
struct | dynamic_traits< algebra::FreeMonoidProduct< F, S > > |
Meta information about FreeMonoidProduct. More... | |
struct | MetaElement< algebra::FreeMonoidProduct< F, S >, T > |
Services of an element of a monoid implemented with FreeMonoidProduct. More... | |
struct | FreeMonoidProductBase |
Structural element for free monoid product. More... | |
struct | dynamic_traits< algebra::FreeMonoidProductBase< Self > > |
struct | virtual_types< algebra::FreeMonoidProductBase< S > > |
struct | MetaElement< algebra::FreeMonoidProductBase< Self >, T > |
Element of a monoid i.e. words. More... | |
struct | FreeMonoid |
Implementation of a free monoid which aggregates its alphabet. More... | |
struct | dynamic_traits< algebra::FreeMonoid< A > > |
Meta information about FreeMonoid. More... | |
struct | MetaElement< algebra::FreeMonoid< A >, T > |
Services of an element of a free monoid implemented with FreeMonoid. More... | |
Typedefs | |
typedef virtual_types< Self >::second_monoid_t | vcsn::algebra::FreeMonoidProductBase::second_monoid_t |
The type of free monoid B*. | |
typedef undefined_type | vcsn::algebra::FreeMonoidProductBase::alphabet_t |
typedef undefined_type | vcsn::algebra::FreeMonoidProductBase::letter_t |
typedef undefined_type | vcsn::virtual_types< algebra::FreeMonoidProductBase< S > >::second_monoid_t |
typedef virtual_types< Self >::second_monoid_t | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::second_monoid_t |
typedef T::first_type | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::first_monoid_elt_value_t |
typedef T::second_type | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::second_monoid_elt_value_t |
typedef Element< first_monoid_t, first_monoid_elt_value_t > | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::first_monoid_elt_t |
typedef Element< second_monoid_t, second_monoid_elt_value_t > | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::second_monoid_elt_t |
Functions | |
template<typename S, typename T> | |
Element< S, T > | vcsn::mirror (const Element< S, T > &e) |
Return a fresh word that is the mirror. | |
template<typename S, typename T, typename CharContainer> | |
bool | vcsn::parse_word (Element< S, T > &dest, const std::string &s, typename std::string::const_iterator &i, const CharContainer &escaped=CharContainer()) |
Parse the beginning of the string looking for a word. | |
template<class F, class S> | |
bool | vcsn::algebra::operator== (const FreeMonoidProduct< F, S > &m1, const FreeMonoidProduct< F, S > &m2) |
first_monoid_t & | vcsn::algebra::FreeMonoidProductBase::first_monoid () |
First monoid's accessor. | |
const first_monoid_t & | vcsn::algebra::FreeMonoidProductBase::first_monoid () const |
First monoid's const accessor. | |
second_monoid_t & | vcsn::algebra::FreeMonoidProductBase::second_monoid () |
Second monoid's accessor. | |
const second_monoid_t & | vcsn::algebra::FreeMonoidProductBase::second_monoid () const |
Second monoid's const accessor. | |
vcsn::algebra::FreeMonoidProductBase::FreeMonoidProductBase () | |
Default constructor accessor. | |
vcsn::algebra::FreeMonoidProductBase::FreeMonoidProductBase (const FreeMonoidProductBase &m) | |
Copy constructor accessor. | |
first_monoid_elt_t & | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::first () |
First monoid's accessor. | |
const first_monoid_elt_t & | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::first () const |
First monoid's const accessor. | |
second_monoid_elt_t & | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::second () |
Second monoid's accessor. | |
const second_monoid_elt_t & | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::second () const |
Second monoid's const accessor. | |
void | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::mirror () |
In-place mirror transformation. | |
template<class Ftor> | |
Ftor::result_type | vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::length (Ftor f) |
Length. | |
vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::MetaElement () | |
Default constructor is protected since it is an abstract class. | |
vcsn::MetaElement< algebra::FreeMonoidProductBase< Self >, T >::MetaElement (const MetaElement &other) | |
Copy constructor is protected since it is an abstract class. | |
template<typename A> | |
bool | vcsn::algebra::operator== (const FreeMonoid< A > &a, const FreeMonoid< A > &b) |