Inheritance diagram for FreeMonoidProduct:

Public Types | |
| typedef F | first_monoid_t |
| The type of free monoid A*. | |
| typedef S | second_monoid_t |
| The type of free monoid B*. | |
| typedef undefined_type | alphabet_t |
| typedef undefined_type | letter_t |
|
typedef FreeMonoidProduct< F, S > | self_t |
| Exact type of the most derived type in the hierarchy. | |
Public Member Functions | |
| FreeMonoidProduct (const F &a, const S &b) | |
| Constructor based on two free monoids. | |
| FreeMonoidProduct (const FreeMonoidProduct &w) | |
| Copy constructor. | |
| first_monoid_t & | first_monoid () |
| Monoid's accessor. | |
| const first_monoid_t & | first_monoid () const |
| First monoid's const accessor. | |
| second_monoid_t & | second_monoid () |
| Second monoid's accessor. | |
| const second_monoid_t & | second_monoid () const |
| Second monoid's const accessor. | |
|
Element< FreeMonoidProduct< F, S >, T > | identity (SELECTOR(T)) const |
| Returns the identity of the monoid (if mul_kind). | |
|
Element< FreeMonoidProduct< F, S >, T > | zero (SELECTOR(T)) const |
| Returns the zero of the monoid (if add_kind). | |
| bool | contains (const Element< FreeMonoidProduct< F, S >, T > &elt) const |
| Check if a given element is compatible with the structural element. | |
| bool | contains (const Element< OtherS, T > &other) const |
Specialization of contains that always returns false. | |
| bool | contains (const T &elt_value) const |
| Check if an anonymous value is compatible with a structural element. | |
|
Element< FreeMonoidProduct< F, S >, T > | choose (SELECTOR(T)) const |
| Choose randomly an element in the structure. | |
| self_t & | self () |
| Accessor to the real type. | |
Protected Attributes | |
| first_monoid_t | first_monoid_ |
| second_monoid_t | second_monoid_ |
Definition at line 37 of file freemonoid_product.hh.
| FreeMonoidProduct< F, S >::first_monoid_t & first_monoid | ( | ) | [inline] |
Monoid's accessor.
Reimplemented from FreeMonoidProductBase< FreeMonoidProduct< F, S > >.
Definition at line 44 of file freemonoid_product.hxx.
References FreeMonoidProduct::first_monoid_.
Referenced by vcsn::op_choose(), and vcsn::algebra::operator==().
| bool contains | ( | const Element< OtherS, T > & | other | ) | const [inline, inherited] |
Specialization of contains that always returns false.
Indeed, elements structured by a particular type are always incompatible with structural elements of another type.
| self_t& self | ( | ) | [inherited] |
Accessor to the real type.
To be used by implementations in this class and derived structures to obtain a reference to the structural element with its most derived type.
1.5.2