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

Fundamental C++ : the Element design pattern.

Core constructs for Vaucanson. More...


Files

file  element.hh
 Declaration of Element.

file  meta_element_root.hh
 Definition of the specialization of MetaElement for the root Structure.

file  predecls.hh
 Forward declarations of the fundamental template classes of Vaucanson.

file  slots.hh
 Declaration of set attribute slot for Element.

file  structure.hh
 Definition of class Structure, the root of all structural element types.


Namespaces

namespace  vcsn
 The main namespace of the Vaucanson library.

namespace  vcsn
 The main namespace of the Vaucanson library.

namespace  vcsn
 The main namespace of the Vaucanson library.

namespace  std
namespace  vcsn
 The main namespace of the Vaucanson library.

namespace  std
namespace  vcsn
 The main namespace of the Vaucanson library.


Modules

Operators

Classes

class  Element
 Glue class between structural elements and implementation values. More...

struct  MetaElement< Structure< S >, T >
 The base class that glues structural elements to implementation values. More...

struct  SetSlotAttribute
 Base class for SetSlot. More...

struct  SetSlotAttribute< S, true >
 Base class for SetSlot, specializing SetSlotAttribute. More...

struct  SetSlot
 Type of the set_ attribute of the Element class. More...

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

struct  dynamic_traits< Structure< S > >
 Specialization of dynamic_traits for Structure. More...

struct  virtual_types< Structure< S > >
 Specialization of virtual_types for Structure. More...

struct  SyntacticDecorator
 This class provides the standard operator delegations to Element. More...


Functions

template<typename S> bool vcsn::operator== (const vcsn::Structure< S > &a, const vcsn::Structure< S > &b)
 The deep equality operator between Structure instances.


Detailed Description

Core constructs for Vaucanson.

This module contains definitions for the design pattern used in Vaucanson, so called "Element". This design pattern is more deeply described in the paper by Yann Régis-Gianas and Raphaël Poss: On orthogonal specialization in C++: Dealing with efficiency and algebraic abstraction in Vaucanson. In the proceedings of the Parallel/High-performance Object-Oriented Scientific Computing (POOSC'2003) Darmstadt, Germany July 2003.

See http://www.lrde.epita.fr/cgi-bin/twiki/view/Publications/200307-Poosc


Function Documentation

bool operator== const vcsn::Structure< S > &  a,
const vcsn::Structure< S > &  b
 

The deep equality operator between Structure instances.

The implementation for Structure always return true since there is no dynamic type information attached to Structure itself.


Generated on Thu Dec 18 14:14:22 2003 for Vaucanson by doxygen 1.3.4