no_exception_support<NoError, UnInitalized, Overflow, Underflow,
Range, Domain>
Description
This exception policy can be used in an environment where one cannot
or does not want to use exceptions.
Parameters are pointers to static functions which are invoked for
each kind of error encountered in the library. The function signature of
these functions are void function(const char * message)
where
message
is the address of a literal string with information
regarding the error.
Template Parameters
Function objects to be invoked are specified for each error
condition via template parameters.
Parameter
Type Requirements
Description
NoError
void (*NoError)(const char *)
Function to call on when an operation is invoked
which COULD throw but does not.
UnInitalized
void (*UnInitalizized)(const char *)
Function to call on when value is
uninitialized
Overflow
void (*Overflow)(const char *)
Function to call on overflow error
Overflow
void (*Overflow)(const char *)
Function to call on overflow error
Underflow
void (*Underflow)(const char *)
Function to call on underflow error
Range
void (*Range)(const char *)
Function to call on range error
Domain
void (*Domain)(const char *)
Function to call on domain error
Header
#include
<boost/safe_numerics/exception_policy.hpp>
Example of use
[A code fragment involving the type.]
void no_error(const char * msg);
void uninitialize(const char * msg);
void overflow(const char * msg);
void underflow(const char * msg);
void range_error(const char * msg);
void domain_error(const char * msg);
using ep = ignore_exception<
no_error,
uninitialized,
overflow,
underflow,
range_error,
domain_error
>;
safe<int, native, ep> st(4);