Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

SeriesBase Struct Template Reference
[Series]

Structural element of series K<A*> from a free monoid A* to a semiring K. More...

Inheritance diagram for SeriesBase:

Inheritance graph
[legend]
List of all members.

Public Types

typedef virtual_types< Self
>::monoid_t 
monoid_t
 The type of the free monoid A*.

typedef virtual_types< Self
>::weights_t 
weights_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_tmonoid () const
 Accessor to the monoid (const version).

const weights_tweights () const
 Accessor to the semiring (const version).

monoid_tmonoid ()
 Accessor to the monoid.

weights_tweights ()
 Accessor to the semiring.

template<class T> bool can_choose_non_stareable (SELECTOR(T)) const
 Indicate wether it is possible or not to call choose_non_stareable.

template<class T> Element< Self, T > choose_stareable (SELECTOR(T)) const
 Return a randomly choosed stareable weight.

template<class T> Element< Self, T > choose_non_stareable (SELECTOR(T)) const
 Return a randomly choosed non-stareable weight.

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_tself ()
 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.


Detailed Description

template<class Self>
struct vcsn::algebra::SeriesBase< Self >

Structural element of series K<A*> from a free monoid A* to a semiring K.


Member Function Documentation

bool contains const Element< OtherS, T > &    other const [inherited]
 

Specialization of containts that always return 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.

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.


Generated on Tue Jul 1 18:19:23 2003 for Vaucanson by doxygen1.3-rc3