Inheritance diagram for FreeMonoid:
Public Types | |
typedef A | alphabets_elt_t |
typedef virtual_types< FreeMonoid< A > >::alphabet_t | alphabet_t |
The type of the alphabet A. | |
typedef alphabet_t::letter_t | letter_t |
The type of letter hold by the alphabet. | |
typedef FreeMonoid< A > | self_t |
Exact type of the most derived type in the hierarchy. | |
Public Member Functions | |
FreeMonoid (const A &a) | |
Constructor based on an alphabet. | |
FreeMonoid (const FreeMonoid &w) | |
Copy constructor. | |
A & | alphabet () |
Alphabet's accessor. | |
const A & | alphabet () const |
Alphabet's accessor. | |
Element< FreeMonoid< A >, T > | identity (SELECTOR(T)) const |
Returns the identity of the monoid (if mul_kind). | |
Element< FreeMonoid< A >, T > | zero (SELECTOR(T)) const |
Returns the zero of the monoid (if add_kind). | |
bool | contains (const Element< FreeMonoid< A >, 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< FreeMonoid< A >, T > | choose (SELECTOR(T)) const |
Choose randomly an element in the structure. | |
self_t & | self () |
Accessor to the real type. | |
Protected Attributes | |
A | alph_ |
Definition at line 36 of file words.hh.
|
Specialization of Indeed, elements structured by a particular type are always incompatible with structural elements of another type. |
|
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. |