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

Structure Struct Template Reference
[Fundamental C++: the Element design pattern.]

Base class for the hierarchy of structural element types. More...

Inheritance diagram for Structure:

Inheritance graph
[legend]
List of all members.

Public Types

typedef S self_t
 Exact type of the most derivated type in the hierarchy.


Public Member Functions

template<typename T> bool contains (const Element< S, T > &elt) const
 Check if a given element is compatible with the structural element.

template<typename OtherS, typename T> bool contains (const Element< OtherS, T > &other) const
 Specialization of containts that always return false.

template<typename T> bool contains (const T &elt_value) const
 Check if an anonymous value is compatible with a structural element.

template<class T> Element< S, T > choose (SELECTOR(T)) const
 Choose randomly an element in the structure.

self_tself ()
 Accessor to the real type.

const self_tself () const
 Accessor to the real type.


Detailed Description

template<typename S>
struct vcsn::Structure< S >

Base class for the hierarchy of structural element types.

It provides:


Member Function Documentation

bool contains const Element< OtherS, T > &  other  )  const
 

Specialization of containts that always return false.

Indeed, elements structured by a particular type are always incompatible with structural elements of another type.

S & self  ) 
 

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.

const S & self  )  const
 

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 Mon Mar 29 15:42:49 2004 for Vaucanson by doxygen 1.3.6-20040222