Disk ARchive  2.5.11
Full featured and portable backup and archiving tool
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules
Public Member Functions | Static Public Member Functions | List of all members
libdar::limitint< B > Class Template Reference

#include <limitint.hpp>

Inherits libdar::on_pool.

Public Member Functions

 limitint (size_t a=0)
 
 limitint (generic_file &x)
 
void dump (generic_file &x) const
 
void read (generic_file &f)
 
limitintoperator+= (const limitint &ref)
 
limitintoperator-= (const limitint &ref)
 
limitintoperator*= (const limitint &ref)
 
template<class T >
limitint power (const T &exponent) const
 
limitintoperator/= (const limitint &ref)
 
limitintoperator%= (const limitint &ref)
 
limitintoperator&= (const limitint &ref)
 
limitintoperator|= (const limitint &ref)
 
limitintoperator^= (const limitint &ref)
 
limitintoperator>>= (U_32 bit)
 
limitintoperator>>= (limitint bit)
 
limitintoperator<<= (U_32 bit)
 
limitintoperator<<= (limitint bit)
 
limitint operator++ (int a)
 
limitint operator-- (int a)
 
limitintoperator++ ()
 
limitintoperator-- ()
 
U_32 operator% (U_32 arg) const
 
template<class T >
void unstack (T &v)
 
limitint get_storage_size () const
 
unsigned char operator[] (const limitint &position) const
 
bool is_zero () const
 
bool operator< (const limitint &x) const
 
bool operator== (const limitint &x) const
 
bool operator> (const limitint &x) const
 
bool operator<= (const limitint &x) const
 
bool operator!= (const limitint &x) const
 
bool operator>= (const limitint &x) const
 
debug_get_max () const
 
debug_get_bytesize () const
 
debug_get_field () const
 
template<class T >
limitint< B > power (const T &exponent) const
 
- Public Member Functions inherited from libdar::on_pool
void * operator new (size_t n_byte)
 
void * operator new (size_t n_byte, const std::nothrow_t &nothrow_value)
 
void * operator new[] (size_t n_byte)
 
void * operator new[] (size_t n_byte, const std::nothrow_t &nothrow_value)
 
void * operator new (size_t n_byte, memory_pool *p)
 
void * operator new[] (size_t n_byte, memory_pool *p)
 
void operator delete (void *ptr, memory_pool *p)
 this operator is called by the compiler if an exception is throw from the constructor of the allocated object
 
void operator delete[] (void *ptr, memory_pool *p)
 this operator is called by the compiler if an exception is throw from the constructor of the allocated objects
 
void operator delete (void *ptr)
 this is the usual delete operator, modified to handle allocated objects allocated on a memory pool or not
 
void operator delete[] (void *ptr)
 this is the usual delete[] operator, modified to handle allocated objects allocated on a memory pool or not
 

Static Public Member Functions

static bool is_system_big_endian ()
 

Additional Inherited Members

- Protected Member Functions inherited from libdar::on_pool
memory_pool * get_pool () const
 
template<class T >
void meta_new (T *&ptr, size_t num)
 
template<class T >
void meta_delete (T *ptr)
 

Detailed Description

template<class B>
class libdar::limitint< B >

limitint template class

the limitint template class implementation can handle positive integers and detect overflow. It shares with infinint the same interface, so it can be use in place of it, but throw Elimitint exceptions if overflow is detected. this template class receive as argument a positive integer atomic type In particular it is assumed that the sizeof() operator gives the amount of byte of information that this type can handle, and it is also assumed that the bytes of information are contiguous.

Definition at line 87 of file limitint.hpp.


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