Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T > Struct Template Reference
[C++ Language Interface]

#include <checked.defs.hh>

List of all members.

Public Member Functions

 const_bool_nodef (check_overflow, false)
 Do not check for overflowed result.
 const_bool_nodef (check_inf_add_inf, false)
 Do not check for attempts to add infinities with different sign.
 const_bool_nodef (check_inf_sub_inf, false)
 Do not check for attempts to subtract infinities with same sign.
 const_bool_nodef (check_inf_mul_zero, false)
 Do not check for attempts to multiply infinities by zero.
 const_bool_nodef (check_div_zero, false)
 Do not check for attempts to divide by zero.
 const_bool_nodef (check_inf_div_inf, false)
 Do not check for attempts to divide infinities.
 const_bool_nodef (check_inf_mod, false)
 Do not check for attempts to compute remainder of infinities.
 const_bool_nodef (check_sqrt_neg, false)
 Do not check for attempts to take the square root of a negative number.
 const_bool_nodef (has_nan, std::numeric_limits< T >::has_quiet_NaN)
 Handle not-a-number special value if T has it.
 const_bool_nodef (has_infinity, std::numeric_limits< T >::has_infinity)
 Handle infinity special values if T have them.
 const_bool_nodef (convertible, true)
 The checked number can always be safely converted to the underlying type T and vice-versa.
 const_bool_nodef (fpu_check_inexact, false)
 Do not honor requests to check for FPU inexact results.
 const_bool_nodef (fpu_check_nan_result, false)
 Do not make extra checks to detect FPU NaN results.

Static Public Member Functions

static void handle_result (Result r)
 Handles r: called by all constructors, operators and functions that do not return a Result value.

Static Public Attributes

static const Rounding_Dir ROUND_DEFAULT_CONSTRUCTOR = ROUND_NATIVE
 For constructors, by default use the same rounding used by underlying type.
static const Rounding_Dir ROUND_DEFAULT_OPERATOR = ROUND_NATIVE
 For overloaded operators (operator+(), operator-(), ...), by default use the same rounding used by the underlying type.
static const Rounding_Dir ROUND_DEFAULT_INPUT = ROUND_NATIVE
 For input functions, by default use the same rounding used by the underlying type.
static const Rounding_Dir ROUND_DEFAULT_OUTPUT = ROUND_NATIVE
 For output functions, by default use the same rounding used by the underlying type.
static const Rounding_Dir ROUND_DEFAULT_FUNCTION = ROUND_NATIVE
 For all other functions, by default use the same rounding used by the underlying type.

Detailed Description

template<typename T>
struct Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >

Definition at line 570 of file checked.defs.hh.


Member Function Documentation

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( fpu_check_nan_result  ,
false   
)

Do not make extra checks to detect FPU NaN results.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( fpu_check_inexact  ,
false   
)

Do not honor requests to check for FPU inexact results.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( convertible  ,
true   
)

The checked number can always be safely converted to the underlying type T and vice-versa.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( has_infinity  ,
std::numeric_limits< T >::has_infinity   
)

Handle infinity special values if T have them.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( has_nan  ,
std::numeric_limits< T >::has_quiet_NaN   
)

Handle not-a-number special value if T has it.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_sqrt_neg  ,
false   
)

Do not check for attempts to take the square root of a negative number.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_inf_mod  ,
false   
)

Do not check for attempts to compute remainder of infinities.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_inf_div_inf  ,
false   
)

Do not check for attempts to divide infinities.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_div_zero  ,
false   
)

Do not check for attempts to divide by zero.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_inf_mul_zero  ,
false   
)

Do not check for attempts to multiply infinities by zero.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_inf_sub_inf  ,
false   
)

Do not check for attempts to subtract infinities with same sign.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_inf_add_inf  ,
false   
)

Do not check for attempts to add infinities with different sign.

template<typename T >
Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::const_bool_nodef ( check_overflow  ,
false   
)

Do not check for overflowed result.

template<typename T >
void Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::handle_result ( Result  r  )  [inline, static]

Handles r: called by all constructors, operators and functions that do not return a Result value.

Definition at line 61 of file Checked_Number.inlines.hh.

00061                                                           {
00062 }


Member Data Documentation

template<typename T >
const Rounding_Dir Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::ROUND_DEFAULT_CONSTRUCTOR = ROUND_NATIVE [static]

For constructors, by default use the same rounding used by underlying type.

Definition at line 617 of file checked.defs.hh.

template<typename T >
const Rounding_Dir Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::ROUND_DEFAULT_FUNCTION = ROUND_NATIVE [static]

For all other functions, by default use the same rounding used by the underlying type.

Definition at line 641 of file checked.defs.hh.

template<typename T >
const Rounding_Dir Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::ROUND_DEFAULT_INPUT = ROUND_NATIVE [static]

For input functions, by default use the same rounding used by the underlying type.

Definition at line 629 of file checked.defs.hh.

template<typename T >
const Rounding_Dir Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::ROUND_DEFAULT_OPERATOR = ROUND_NATIVE [static]

For overloaded operators (operator+(), operator-(), ...), by default use the same rounding used by the underlying type.

Definition at line 623 of file checked.defs.hh.

template<typename T >
const Rounding_Dir Parma_Polyhedra_Library::Checked_Number_Transparent_Policy< T >::ROUND_DEFAULT_OUTPUT = ROUND_NATIVE [static]

For output functions, by default use the same rounding used by the underlying type.

Definition at line 635 of file checked.defs.hh.


The documentation for this struct was generated from the following files:
Generated on Sun Feb 27 16:20:20 2011 for PPL by  doxygen 1.6.3