Inheritance diagram for MetaElement< algebra::FreeMonoidProductBase< Self >, T >:
Public Types | |
typedef virtual_types< Self >::first_monoid_t | first_monoid_t |
typedef virtual_types< Self >::second_monoid_t | second_monoid_t |
typedef T::first_type | first_monoid_elt_value_t |
typedef T::second_type | second_monoid_elt_value_t |
typedef Element< first_monoid_t, first_monoid_elt_value_t > | first_monoid_elt_t |
typedef Element< second_monoid_t, second_monoid_elt_value_t > | second_monoid_elt_t |
Public Member Functions | |
first_monoid_elt_t & | first () |
First monoid's accessor. | |
const first_monoid_elt_t & | first () const |
First monoid's const accessor. | |
second_monoid_elt_t & | second () |
Second monoid's accessor. | |
const second_monoid_elt_t & | second () const |
Second monoid's const accessor. | |
void | mirror () |
In-place mirror transformation. | |
template<class Ftor> | |
Ftor::result_type | length (Ftor f) |
Length. | |
Protected Member Functions | |
MetaElement () | |
Default constructor is protected since it is an abstract class. | |
MetaElement (const MetaElement &other) | |
Copy constructor is protected since it is an abstract class. |
Definition at line 110 of file freemonoid_product_base.hh.