QxOrm  1.4.8
C++ Object Relational Mapping library
eos::portable_archive_exception Class Reference

Exception being thrown when serialization cannot proceed. More...

#include <portable_archive_exception.hpp>

List of all members.

Public Member Functions

 portable_archive_exception (signed char invalid_size)
 type size is not large enough for deserialized number
 portable_archive_exception ()
 negative number in unsigned type
template<typename T >
 portable_archive_exception (const T &abnormal)
 serialization of inf, nan and denormals
const char * what () const throw ()
 override the base class function with our message
 ~portable_archive_exception () throw ()

Private Attributes

std::string msg

Detailed Description

Exception being thrown when serialization cannot proceed.

There are several situations in which the portable archives may fail and hence throw an exception:

  1. deserialization of an integer value that exceeds the range of the type
  2. (de)serialization of inf/nan through an archive with no_infnan flag set
  3. deserialization of a denormalized value without the floating point type supporting denormalized numbers

Note that this exception will also be thrown if you mixed up your stream position and accidentially interpret some value for size data (in this case the reported size will be totally amiss most of the time).

Definition at line 66 of file portable_archive_exception.hpp.

Constructor & Destructor Documentation

eos::portable_archive_exception::portable_archive_exception ( signed char  invalid_size) [inline]

type size is not large enough for deserialized number

Definition at line 72 of file portable_archive_exception.hpp.

eos::portable_archive_exception::portable_archive_exception ( ) [inline]

negative number in unsigned type

Definition at line 80 of file portable_archive_exception.hpp.

template<typename T >
eos::portable_archive_exception::portable_archive_exception ( const T &  abnormal) [inline]

serialization of inf, nan and denormals

Definition at line 88 of file portable_archive_exception.hpp.

eos::portable_archive_exception::~portable_archive_exception ( ) throw () [inline]

Definition at line 97 of file portable_archive_exception.hpp.

Member Function Documentation

const char* eos::portable_archive_exception::what ( ) const throw () [inline]

override the base class function with our message

Definition at line 96 of file portable_archive_exception.hpp.

Member Data Documentation

std::string eos::portable_archive_exception::msg [private]

Definition at line 68 of file portable_archive_exception.hpp.

The documentation for this class was generated from the following file: