meta_programming.hh File Reference

#include <gmpxx.h>

Include dependency graph for meta_programming.hh:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Parma_Polyhedra_Library

Classes

struct  Parma_Polyhedra_Library::Compile_Time_Check< true >
 A class that is only defined if b evaluates to true. More...
struct  Parma_Polyhedra_Library::Bool< b >
 A class holding a constant called value that evaluates to b. More...
struct  Parma_Polyhedra_Library::True
 A class holding a constant called value that evaluates to true. More...
struct  Parma_Polyhedra_Library::False
 A class holding a constant called value that evaluates to false. More...
struct  Parma_Polyhedra_Library::Is_Same< T1, T2 >
 A class holding a constant called value that evaluates to true if and only if T1 is the same type as T2. More...
struct  Parma_Polyhedra_Library::Is_Same< T, T >
 A class holding a constant called value that evaluates to true if and only if T1 is the same type as T2. More...
struct  Parma_Polyhedra_Library::Is_Same_Or_Derived< Base, Derived >
 A class holding a constant called value that evaluates to true if and only if Base is the same type as Derived or Derived is a class derived from Base. More...
struct  Parma_Polyhedra_Library::Is_Same_Or_Derived< Base, Derived >::Any
 A class that is constructible from just anything. More...
struct  Parma_Polyhedra_Library::Enable_If< b, T >
 A class that provides a type member called type equivalent to T if and only if b is true. More...
struct  Parma_Polyhedra_Library::Enable_If_Is< Type, Type, T >
struct  Parma_Polyhedra_Library::Enable_If< true, T >
 A class that provides a type member called type equivalent to T if and only if b is true. More...
struct  Parma_Polyhedra_Library::Is_Native< T >
struct  Parma_Polyhedra_Library::Is_Native< signed char >
struct  Parma_Polyhedra_Library::Is_Native< signed short >
struct  Parma_Polyhedra_Library::Is_Native< signed int >
struct  Parma_Polyhedra_Library::Is_Native< signed long >
struct  Parma_Polyhedra_Library::Is_Native< signed long long >
struct  Parma_Polyhedra_Library::Is_Native< unsigned char >
struct  Parma_Polyhedra_Library::Is_Native< unsigned short >
struct  Parma_Polyhedra_Library::Is_Native< unsigned int >
struct  Parma_Polyhedra_Library::Is_Native< unsigned long >
struct  Parma_Polyhedra_Library::Is_Native< unsigned long long >
struct  Parma_Polyhedra_Library::Is_Native< mpz_class >
struct  Parma_Polyhedra_Library::Is_Native< mpq_class >

Defines

#define PPL_meta_programming_hh   1
#define const_bool_nodef(name, value)   enum { name = (value) }
 Declares a per-class constant of type bool, called name and with value value.
#define const_int_nodef(name, value)   enum { name = (value) }
 Declares a per-class constant of type int, called name and with value value.
#define const_value_nodef(type, name, value)
 Declares a per-class constant of type type, called name and with value value. The value of the constant is accessible by means of the syntax name().
#define const_ref_nodef(type, name, value)
 Declares a per-class constant of type type, called name and with value value. A constant reference to the constant is accessible by means of the syntax name().
#define COMPILE_TIME_CHECK_NAME(suffix)   compile_time_check_ ## suffix
#define COMPILE_TIME_CHECK_AUX(e, suffix)
#define COMPILE_TIME_CHECK(e, msg)   COMPILE_TIME_CHECK_AUX(e, __LINE__)
 Produces a compilation error if the compile-time constant e does not evaluate to true.


Define Documentation

#define COMPILE_TIME_CHECK_AUX ( e,
suffix   ) 

Definition at line 118 of file meta_programming.hh.

#define COMPILE_TIME_CHECK_NAME ( suffix   )     compile_time_check_ ## suffix

Definition at line 117 of file meta_programming.hh.

#define PPL_meta_programming_hh   1

Definition at line 24 of file meta_programming.hh.


Generated on Sat Oct 11 10:40:28 2008 for PPL by  doxygen 1.5.6