Public Member Functions | Friends

my_lib::any Struct Reference

Encapsulation d'une valeur de type quelconque. More...

#include <any.hh>

Collaboration diagram for my_lib::any:
Collaboration graph
[legend]

List of all members.

Public Member Functions

template<typename T >
 any (const T &t)
 Constructeur.
 any (const any &a)
 Constructeur par copie.
template<typename T >
anyoperator= (const any &a)
 Opérateur d'affectation.
template<typename T >
anyoperator= (const T &t)
 Opérateur d'affectation.
 ~any ()
 Destructeur.

Friends

template<typename T >
any_cast (const any &a)
 any_cast doit pouvoir accéder au champ privé val
template<typename T >
bool any_typeof (const any &a)
 any_typeof doit pouvoir accéder au champ privé val
std::ostream & operator<< (std::ostream &o, const any &a)
 operator<< doit pouvoir accéder au champ privé val

Detailed Description

Encapsulation d'une valeur de type quelconque.

La valeur est stockée dans un objet de type Value<T> accessible via un pointeur de type untyped_value*.

Definition at line 48 of file any.hh.


Constructor & Destructor Documentation

template<typename T >
my_lib::any::any ( const T &  t  ) 

Constructeur.

Template Parameters:
T le type de la valeur à encapsuler
Parameters:
t la valeur à encapsuler

Definition at line 16 of file any.hxx.

my_lib::any::any ( const any a  ) 

Constructeur par copie.

Parameters:
a l'objet dont on duplique la valeur

Definition at line 18 of file any.hxx.

my_lib::any::~any (  ) 

Destructeur.

Definition at line 33 of file any.hxx.


Member Function Documentation

template<typename T >
any & my_lib::any::operator= ( const any a  ) 

Opérateur d'affectation.

Parameters:
a l'objet dont on duplique la valeur

Definition at line 21 of file any.hxx.

template<typename T >
any & my_lib::any::operator= ( const T &  t  ) 

Opérateur d'affectation.

Template Parameters:
T le type de la valeur à encapsuler
Parameters:
t la valeur à encapsuler

Definition at line 28 of file any.hxx.


Friends And Related Function Documentation

template<typename T >
T any_cast ( const any a  )  [friend]

any_cast doit pouvoir accéder au champ privé val

On utilise dynamic_cast pour effectuer le transtypage du undefined_type associé au any en Value<T>.

Exceptions:
bad_cast si la valeur n'est pas de type T
Template Parameters:
T le type de la valeur
Parameters:
l'objet any qui encapsule la valeur
Returns:
la valeur encapsulé

Definition at line 47 of file any.hxx.

template<typename T >
bool any_typeof ( const any a  )  [friend]

any_typeof doit pouvoir accéder au champ privé val

On utilise typeid pour effectuer ce test

Template Parameters:
T le type à tester
Parameters:
l'objet any qui encapsule la valeur
Returns:
vrai si la valeur est exactement du type T

Definition at line 42 of file any.hxx.

std::ostream& operator<< ( std::ostream &  o,
const any a 
) [friend]

operator<< doit pouvoir accéder au champ privé val

Definition at line 37 of file any.hxx.


The documentation for this struct was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Friends