Inheritance diagram for SeriesBase:

Public Types | |
| 
typedef virtual_types< Self  >::monoid_t  | monoid_t | 
| The type of the free monoid A*.  | |
| 
typedef virtual_types< Self  >::semiring_t  | semiring_t | 
| The type of the semiring K.  | |
| typedef Self | self_t | 
| Exact type of the most derivated type in the hierarchy.  | |
Public Member Functions | |
| const monoid_t & | monoid () const | 
| Accessor to the monoid (const version).  | |
| const semiring_t & | semiring () const | 
| Accessor to the semiring (const version).  | |
| monoid_t & | monoid () | 
| Accessor to the monoid.  | |
| semiring_t & | semiring () | 
| Accessor to the semiring.  | |
| template<class T> bool | can_choose_non_starable (SELECTOR(T)) const | 
| Indicate wether it is possible or not to call choose_non_starable.   | |
| template<class T> Element< Self, T > | choose_starable (SELECTOR(T)) const | 
| Return a randomly choosed starable semiring element.  | |
| template<class T> Element< Self, T > | choose_non_starable (SELECTOR(T)) const | 
| Return a randomly choosed non-starable semiring element.  | |
| template<typename T> Element< Self, T > | identity (SELECTOR(T)) const | 
| Returns the identity of the monoid (if mul_kind).  | |
| template<typename T> Element< Self, T > | zero (SELECTOR(T)) const | 
| Returns the zero of the monoid (if add_kind).  | |
| bool | contains (const Element< Self, T > &elt) const | 
| Check if a given element is compatible with the structural element.  | |
| bool | contains (const Element< OtherS, T > &other) const | 
Specialization of containts that always return false.   | |
| bool | contains (const T &elt_value) const | 
| Check if an anonymous value is compatible with a structural element.  | |
| Element< Self, T > | choose (SELECTOR(T)) const | 
| Choose randomly an element in the structure.  | |
| self_t & | self () | 
| Accessor to the real type.   | |
Protected Member Functions | |
| SeriesBase () | |
| Default constructor is protected since it is an abstract class.  | |
| SeriesBase (const SeriesBase &other) | |
| Copy constructor is protected since it is an abstract class.  | |
      
  | 
  
| 
 Indicate wether it is possible or not to call choose_non_starable. There's no need for can_choose_starable, since Zero is always starable and therefor can be choosen.  | 
  
      
  | 
  
| 
 
Specialization of  Indeed, elements structured by a particular type are always incompatible with structural elements of another type.  | 
  
      
  | 
  
| 
 Accessor to the real type. This accessor is intended to be used by implementations in this class and derivated structures to obtain a reference to the structural element with its most derivated type.  | 
  
 1.3.6-20040222