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

exp Class Template Reference

Implementation of rational expression. More...

Inheritance diagram for exp:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 ~exp ()
 Destructor.
expstar ()
 Star an expression.
expswap (exp &otether)
 Swap with another expression.
void accept (ConstNodeVisitor< monoid_elt_value_t, semiring_elt_value_t > &v) const
 Facility to accept a visitor on the root node.
size_t depth () const
 Compute the depth of the expression.
size_t star_height () const
 Compute the star height (h) of the expression (E).
size_t length () const
 Compute the length of the expression, i.e.
exp clone () const
 Copy the expression.

Static Public Member Functions

static bool starable ()
 Always returns true, since a expression is always starable.

Protected Attributes

node_t * base_
 Root node.

Detailed Description

template<typename LetterT, typename WeightT>
class vcsn::rat::exp< LetterT, WeightT >

Implementation of rational expression.


Member Function Documentation

size_t star_height  )  const
 

Compute the star height (h) of the expression (E).

Definition: if E=0 or E=1 or E='letter' then 0 if E=E1 + E2 or E=E1.E2 then max(h(E1), h(E2)) if E=F* then 1 + h(F)

size_t length  )  const
 

Compute the length of the expression, i.e.

the number of letters used in the expression.


Generated on Thu Oct 27 12:52:43 2005 for Vaucanson by  doxygen 1.4.1