# vcsn::misc Namespace Reference

The namespace for miscellaneous constructs. More...

## Namespaces

namespace | random

| The namespace for the random generation tools.
namespace | unique

| The namespace for the instance collection tools.

## Classes

class | Support< std::vector< boost::shared_ptr< std::size_t > > >
| Support<vector<T> > is a const adapter of std::vector to container. More...
class | Support< std::set< boost::shared_ptr< std::size_t > > >
| Support<vector<T> > is a const adapter of std::set to container. More...
class | Support< vcsn::bmig::InitialContainer< U, HState > >
| Support<InitialContainer<U, T> > is a const adapter of InitialContainer to container. More...
class | SparseIterator< vcsn::handler< T, unsigned >, ExcludedContainer >
| SparseIterator is an iterator over range except some points. More...
class | SparseInterval< vcsn::handler< T, unsigned >, ExcludedContainer >
| Container over a sparse integer range. More...
struct | Bitset
| Dynamic bitset class. More...
struct | generic_int_type
| Generic and under-efficient int_type implementation for char_traits. More...
struct | char_traits
| Generic char_traits. More...
struct | DeferrerDebugPart
| Helper class for Deferrer. More...
struct | Deferrer
| This class defers the creation of its template parameter. More...
struct | escaper
| IO Manipulator to escape some characters when displaying them. More...
struct | setesc
| IO Manipulator to set the characters that need to be escaped. More...
struct | iomanip
| Base class for IO manipulators. More...
class | SelfIterator
| SelfIterator is an iterator which is also a container. More...
class | SparseIterator
| SparseIterator is an iterator over range except some points. More...
class | SparseInterval
| Container over a sparse integer range. More...
struct | remove_reference
| Turn a reference type into its corresponding plain type. More...
struct | remove_const
| Turn a const type into its corresponding mutable type. More...
struct | static_if
| Choose between two types or values depending on a constant Boolean. More...
struct | true_t
| Static Booleans, for type matching use of Booleans. More...
struct | static_if_simple
| Choose between two types or values depending on a constant Boolean. More...
struct | static_eq
| Test for equality between two types. More...
struct | static_pow_compute
| These are auxilliary functions for static_pow. More...
struct | static_pow
| Static exponentiation. More...
struct | static_pow_minus_one
| Static exponentiation, result minus one. More...
class | SupportIterator
| Iterator over the Support generic class. More...
class | Support< std::map< U, T > >
| Support<map<U, T> > is a const adapter of std::map to container. More...
class | Support< std::set< U > >
| Support<set<U, T> > is a const adapter of std::map to container. More...
struct | Window
| Handle windows in streams for performing regular expression search. More...

## Enumerations

enum |
enum | direction_type
| The orientation for some algorithms. More...

## Functions

std::ostream & | operator<< (std::ostream &ostr, const Bitset &set)
| Print a bitset onto an output stream.
template<class T >
escaper< T > | make_escaper (const T &w)
| Build an escaper.
std::set< char > & | getesc (std::ostream &ostr)
| Retrieve the escaped characters set of a stream.
int | escaped ()
| Get the index in the internal extensible array for escaped characters.
template<class T >
void | pword_delete (std::ios_base::event ev, std::ios_base &io, int idx)
| Delete memory associated with a stream upon its destruction.
std::set< char > | usual_escaped_characters ()
| Return a set filled with ".+* ()\ 10[]".
Prime Number Operator
vcsn algebra Greatest common divisor.
unsigned long long | gcd (unsigned long long a, unsigned long long b)
| Least common multiple.
unsigned long long | lcm (unsigned long long a, unsigned long long b)
| Least common multiple.
bool | is_coprime (unsigned long long a, unsigned long long b)
| Coprime between to int.
unsigned long long | abs (long long a)
| Least common multiple.

## Detailed Description

The namespace for miscellaneous constructs.

This namespace holds C++ constructs and tools used in Vaucanson. Those files are miscellany because they are not related to core mathematical part of the library. If you are looking for tools to be used by the user, like dumpers, see namespace `tools'.

## Enumeration Type Documentation

enum direction_type

The orientation for some algorithms.

See also:
  realtime(), eps_removal()

Definition at line 35 of file direction.hh.

## Function Documentation

escaper< T > make_escaper | ( | const T & | w | ) |

Build an escaper.

See also:
  escaper, setesc, getesc (), iomanip.

Author:
  Thomas Claveirole <thomas.claveirole@lrde.epita.fr>

Definition at line 79 of file escaper.hxx.

std::set< char > & getesc | ( | std::ostream & | ostr | ) | `[inline]`

Retrieve the escaped characters set of a stream.

See also:
  escaper, setesc, iomanip.

Author:
  Thomas Claveirole <thomas.claveirole@lrde.epita.fr>

Definition at line 113 of file escaper.hxx.

References escaped(), and usual_escaped_characters().

void pword_delete | ( | std::ios_base::event | ev,
|  | std::ios_base & | io,
|  | int | idx |
| ) |  |  |

Delete memory associated with a stream upon its destruction.

Some manipulators allocate memory and use the internal extensible array to store pointers to the allocated zone. Upon the stream's destruction, the memory must be freed to avoid memory leaks.

This function is a generic callback that will perform such a destruction. idx is used as an index in the internal extensible array to an element of type T*. When an erase_event is received, the element idx refers to in the stream is deleted.

- `T` Type of the pointed element.

Parameters:

  | ev | IO event.
  | io | Related stream.
  | idx | Index in the internal extensible array of a pointer to delete.

See also:
  iomanip

Author:
  Thomas Claveirole <thomas.claveirole@lrde.epita.fr>

Definition at line 59 of file iomanip.hxx.