QxOrm  1.4.4
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 must fail and hence throw an exception:

  1. deserialization of an integer value that exceeds the range of the type
  2. serialization of special floating point values nan or inf
  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 invalid_size will be totally amiss most of the time).

Definition at line 42 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 49 of file portable_archive_exception.hpp.

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

negative number in unsigned type

Definition at line 55 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 59 of file portable_archive_exception.hpp.

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

Definition at line 66 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 65 of file portable_archive_exception.hpp.

Member Data Documentation

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

Definition at line 44 of file portable_archive_exception.hpp.

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