This is Unofficial EPICS BASE Doxygen Site
boost::exception_detail Namespace Reference

Classes

class  clone_base
 
class  clone_impl
 
struct  enable_error_info_helper
 
struct  enable_error_info_helper< T, sizeof(large_size)>
 
struct  enable_error_info_helper< T, sizeof(small_size)>
 
struct  enable_error_info_return_type
 
struct  error_info_container
 
struct  error_info_injector
 
struct  get_info
 
struct  large_size
 
class  refcount_ptr
 
struct  small_size
 

Functions

char const * get_diagnostic_information (exception const &, char const *)
 
void copy_boost_exception (exception *, exception const *)
 
template<class E , class Tag , class T >
E const & set_info (E const &, error_info< Tag, T > const &)
 
template<class E >
E const & set_info (E const &, throw_function const &)
 
template<class E >
E const & set_info (E const &, throw_file const &)
 
template<class E >
E const & set_info (E const &, throw_line const &)
 
large_size dispatch_boost_exception (exception const *)
 
small_size dispatch_boost_exception (void const *)
 
void copy_boost_exception (void *, void const *)
 
template<class E >
BOOST_ATTRIBUTE_NORETURN void throw_exception_ (E const &x, char const *current_function, char const *file, int line)
 

Function Documentation

void boost::exception_detail::copy_boost_exception ( exception a,
exception const *  b 
)
inline

Definition at line 412 of file exception.hpp.

413  {
414  refcount_ptr<error_info_container> data;
415  if( error_info_container * d=b->data_.get() )
416  data = d->clone();
417  a->throw_file_ = b->throw_file_;
418  a->throw_line_ = b->throw_line_;
419  a->throw_function_ = b->throw_function_;
420  a->data_ = data;
421  }
void boost::exception_detail::copy_boost_exception ( void *  ,
void const *   
)
inline

Definition at line 425 of file exception.hpp.

426  {
427  }
large_size boost::exception_detail::dispatch_boost_exception ( exception const *  )
small_size boost::exception_detail::dispatch_boost_exception ( void const *  )
char const* boost::exception_detail::get_diagnostic_information ( exception const &  ,
char const *   
)
template<class E , class Tag , class T >
E const& boost::exception_detail::set_info ( E const &  ,
error_info< Tag, T > const &   
)
template<class E >
E const & boost::exception_detail::set_info ( E const &  x,
throw_function const &  y 
)

Definition at line 285 of file exception.hpp.

286  {
287  x.throw_function_=y.v_;
288  return x;
289  }
template<class E >
E const & boost::exception_detail::set_info ( E const &  x,
throw_file const &  y 
)

Definition at line 293 of file exception.hpp.

294  {
295  x.throw_file_=y.v_;
296  return x;
297  }
template<class E >
E const & boost::exception_detail::set_info ( E const &  x,
throw_line const &  y 
)

Definition at line 301 of file exception.hpp.

302  {
303  x.throw_line_=y.v_;
304  return x;
305  }
template<class E >
BOOST_ATTRIBUTE_NORETURN void boost::exception_detail::throw_exception_ ( E const &  x,
char const *  current_function,
char const *  file,
int  line 
)

Definition at line 82 of file throw_exception.hpp.

83  {
85  set_info(
86  set_info(
87  set_info(
89  throw_function(current_function)),
90  throw_file(file)),
91  throw_line(line)));
92  }
error_info< struct throw_file_, char const * > throw_file
Definition: exception.hpp:90
error_info< struct throw_line_, int > throw_line
Definition: exception.hpp:91
exception_detail::enable_error_info_return_type< T >::type enable_error_info(T const &x)
Definition: exception.hpp:375
char * line
Definition: reader.c:25
E const & set_info(E const &, error_info< Tag, T > const &)
error_info< struct throw_function_, char const * > throw_function
Definition: exception.hpp:87
BOOST_ATTRIBUTE_NORETURN void throw_exception(E const &e)