Collaboration diagram for Utility constructs for Vaucanson:
Files | |
file | char_traits.hh |
Generic char_traits declarations. | |
file | deferrer.hh |
Declarations for the Deferrer class. | |
file | deferrer.hxx |
Definitions for the Deferrer class. | |
file | window.hh |
Window class for regular expression search on streams. | |
Namespaces | |
namespace | utility |
The namespace for utility constructs. | |
Modules | |
Contract checking for Vaucanson | |
In Vaucanson, several types of contracts can be placed in the library code. | |
Classes | |
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 | DeferrerDebugPart |
Helper class for Deferrer. More... | |
struct | DeferrerDebugPart< T, false > |
struct | Deferrer |
This class defers the creation of its template parameter. More... | |
struct | remove_reference |
Turn a reference type into its corresponding plain type. More... | |
struct | remove_reference |
Turn a reference type into its corresponding plain type. More... | |
struct | remove_reference< T & > |
struct | remove_reference< const T & > |
struct | remove_const |
Turn a const type into its corresponding mutable type. More... | |
struct | remove_const |
Turn a const type into its corresponding mutable type. More... | |
struct | remove_const < const T > |
struct | static_if |
Choose between two types or values depending on a constant Boolean. More... | |
struct | static_if |
Choose between two types or values depending on a constant Boolean. More... | |
struct | static_if< false, T, U > |
struct | static_if_simple |
Choose between two types or values depending on a constant Boolean. More... | |
struct | static_if_simple |
Choose between two types or values depending on a constant Boolean. More... | |
struct | static_if_simple< false, T, U > |
struct | static_eq |
Test for equality between two types. More... | |
struct | static_eq |
Test for equality between two types. More... | |
struct | static_eq< T, T > |
struct | static_pow_compute |
These are auxilliary functions for static_pow. More... | |
struct | static_pow_compute |
These are auxilliary functions for static_pow. More... | |
struct | static_pow_compute< N, P, true > |
struct | static_pow_compute< N, 0, true > |
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 | SparseIterator |
SparseIterator is an iterator over range except some points. More... | |
class | SparseInterval |
Container over a sparse integer range. More... | |
class | SelfIterator |
SelfIterator is an iterator which is also a container. More... | |
struct | Window |
Handle windows in streams for performing regular expression search. More... | |
Small alphabetic letters random generation tools. | |
typedef vcsn::algebra::static_char_interval< 'a', 'z'> | utility::random::small_alpha_interval_t |
typedef vcsn::algebra::static_ranged< char, small_alpha_interval_t > | utility::random::small_alpha_letter_t |
template<> | |
small_alpha_letter_t | utility::random::generate< small_alpha_letter_t > () |
Generates a random small alphabetic letter. | |
void | utility::Window::moveto (length_t offset) |
Move to a specific offset. | |
void | utility::Window::moveto (iterator_t position) |
Move to a specific offset. | |
Accessors | |
letter_t | utility::Window::eol_value () const |
Get the letter value used for ending lines. | |
iterator_t | utility::Window::begin () const |
Get an iterator to the beginning of the stream. | |
iterator_t | utility::Window::stream () const |
Get an iterator to the current position in the stream. | |
iterator_t | utility::Window::end () const |
Get an iterator to the end of the stream. | |
size_t | utility::Window::offset () const |
Get the actual offset in the stream. | |
length_t | utility::Window::length () const |
Get the maximum length of the window. | |
string_t | utility::Window::window () const |
Get the window as a basic_string<letter_t> . | |
Defines | |
#define | SELECT(T) (*(const T*)0) |
Type argument for types with no commas (simple or 1-par templates). | |
#define | SELECT2(T1, T2) (*(const T1 , T2 *)0) |
Type argument for types with one comma (2-parameters templates). | |
#define | SELECT3(T1, T2, T3) (*(const T1 , T2, T3 *)0) |
Type argument for types with two commas (3-parameters templates). | |
#define | SELECT4(T1, T2, T3, T4) (*(const T1 , T2, T3, T4 *)0) |
Type argument for types with three commas (4-parameters templates). | |
#define | SELECTOR(T) const T & |
Type formal argument for types with no commas (simple or 1-par templates). | |
#define | SELECTOR2(T1, T2) const T1 , T2 & |
Type formal argument for types with one comma (2-parameters templates). | |
#define | SELECTOR3(T1, T2, T3) const T1 , T2, T3 & |
Type formal argument for types with two commas (3-parameters templates). | |
#define | SELECTOR4(T1, T2, T3, T4) const T1 , T2, T3, T4 & |
Type formal argument for types with three commas (4-parameters templates). | |
Enumerations | |
enum | |
Functions | |
template<typename T> | |
T | utility::random::generate () |
Generate a random value. | |
template<typename T> | |
T | utility::random::generate (T min, T max) |
Generate a random value between bounds. | |
template<> | |
char | utility::random::generate< char > () |
Generate a random character. | |
template<> | |
char | utility::random::generate< char > (char min, char max) |
Generate a random character between bounds. | |
char | utility::random::generate_letter () |
Generate a random lowercase letter. | |
char | utility::random::generate_digit () |
Generate a random digit. | |
template<> | |
bool | utility::random::generate< bool > () |
Generate a random Boolean. | |
template<> | |
int | utility::random::generate< int > () |
Generate a random integer. | |
template<> | |
int | utility::random::generate< int > (int min, int max) |
Generate a random integer between two bounds. | |
template<> | |
unsigned | utility::random::generate< unsigned > () |
Generate a random unsigned integer. | |
template<> | |
unsigned | utility::random::generate< unsigned > (unsigned min, unsigned max) |
Generate a random unsigned between two bounds. | |
template<> | |
float | utility::random::generate< float > () |
Generate a random float between -2 and 2. | |
template<> | |
float | utility::random::generate< float > (float min, float max) |
Generate a random float between min and max. | |
template<> | |
double | utility::random::generate< double > () |
Generate a random double between -2 and 2. | |
template<> | |
double | utility::random::generate< double > (double min, double max) |
Generate a random double between min and max. | |
template<class InputIterator, class OutputIterator> | |
void | utility::random::sample_n (InputIterator first, InputIterator end, OutputIterator out, unsigned n) |
Generate of n sample from a range to an output iterator. | |
template<> | |
vcsn::algebra::RationalNumber | utility::random::generate< vcsn::algebra::RationalNumber > () |
Generate a random rational number. | |
template<> | |
vcsn::algebra::RationalNumber | utility::random::generate< vcsn::algebra::RationalNumber > (const vcsn::algebra::RationalNumber min, const vcsn::algebra::RationalNumber max) |
Generates a bounded random rational number. | |
template<> | |
std::pair< char, int > | utility::random::generate< std::pair< char, int > > () |
Generate a random std::pair<char, int>. | |
template<typename T> | |
const T & | utility::unique::get (const T &) |
The canonicalization operator. | |
template<typename T> | |
const T * | utility::unique::get (const T *) |
Version of the canonicalization operator for pointers. | |
template<class InputIterator, class Letter> | |
std::ostream & | utility::operator<< (std::ostream &ostr, const Window< InputIterator, Letter > &w) |
utility::DeferrerDebugPart::DeferrerDebugPart (void *ptr, bool is_valid=false) | |
void | utility::DeferrerDebugPart::set_valid (bool b) |
T & | utility::DeferrerDebugPart::cast (void *) |
const T & | utility::DeferrerDebugPart::cast (const void *) const |
utility::DeferrerDebugPart< T, false >::DeferrerDebugPart (void *ptr, bool is_valid=false) | |
void | utility::DeferrerDebugPart< T, false >::set_valid (bool b) |
T & | utility::DeferrerDebugPart< T, false >::cast (void *) |
const T & | utility::DeferrerDebugPart< T, false >::cast (const void *) const |
utility::Deferrer::Deferrer () | |
Constructor. | |
Deferrer & | utility::Deferrer::operator= (const deferred_type &) |
Effectively builds the holded type. | |
utility::Deferrer::operator T () const | |
Get back the holded type. | |
utility::Window::Window (const iterator_t &stream, const iterator_t &eof, letter_t eol, length_t length) | |
bool | utility::Window::eof () const |
Indicates wether the end of the stream has been reached or not. | |
bool | utility::Window::eol () const |
Indicates wether a new line has been reached or not. | |
void | utility::Window::shift (unsigned int n) |
Shift the window. | |
void | utility::Window::shift () |
Shift the window completely (equivalent to shift(size())). | |
length_t | utility::Window::size () const |
Returns the actual window size. | |
letter_t | utility::Window::operator[] (length_t i) const |
Returns the i-th character of the window. | |
std::ostream & | utility::Window::print (std::ostream &ostr) const |
Print the window. | |
void | utility::Window::compute_size () |
|
Generate a random value between bounds.
This function returns a value between |
|
Generates a bounded random rational number. Both fractions are first brought to the same denominator. Then, the maximum of the denominator and both numerators is taken. With this number, we work out a ratio, which is used to have a larger range of choice for our new fraction. |
|
The canonicalization operator.
This operator uses the
Definition at line 74 of file unique.hxx. References UniqueMap::instance(). Referenced by SetSlotAttribute< S, true >::_structure_attach(), vcsn::do_concatenate_of_normalized_here(), vcsn::do_star_of_normalized_here(), utility::unique::get(), and spontaneous_query::operator()(). |
|
Constructor. Please notice that this constructor *do not initialize* the holded type.
Definition at line 112 of file deferrer.hxx. |
|
Effectively builds the holded type.
Definition at line 118 of file deferrer.hxx. References Deferrer::data, and DeferrerDebugPart< T, rt_checks >::set_valid(). |
|
Build a window from a couple of begin/end iterator, a newline character and a window length.
Definition at line 36 of file window.hxx. References Window::compute_size(), and precondition. |
|
Shift the window.
Definition at line 67 of file window.hxx. References Window::compute_size(), Window::end_, Window::eol_, precondition, Window::size_, and Window::stream_. |