Lunchbox  1.4.0
Public Member Functions | Static Public Attributes
lunchbox::uint128_t Class Reference

A base type for 128 bit unsigned integer values. More...

#include <uint128_t.h>

+ Inheritance diagram for lunchbox::uint128_t:
+ Collaboration diagram for lunchbox::uint128_t:

List of all members.

Public Member Functions

 uint128_t (const uint64_t low_=0)
 Construct a new 128 bit integer with a default value.
 uint128_t (const uint64_t high_, const uint64_t low_)
 Construct a new 128 bit integer with default values.
 uint128_t (const std::string &string)
 Construct a new 128 bit integer from a string representation.
uint128_toperator= (const uint128_t &rhs)
 Assign another 128 bit value.
uint128_toperator= (const uint64_t rhs)
 Assign another 64 bit value.
uint128_toperator= (const std::string &from)
 Assign an 128 bit value from a std::string.
bool operator== (const uint128_t &rhs) const
bool operator!= (const uint128_t &rhs) const
bool operator< (const uint128_t &rhs) const
bool operator> (const uint128_t &rhs) const
bool operator<= (const uint128_t &rhs) const
bool operator>= (const uint128_t &rhs) const
uint128_toperator++ ()
 Increment the value.
uint128_toperator-- ()
 Decrement the value.
const uint64_t & low () const
const uint64_t & high () const
uint64_t & low ()
uint64_t & high ()
std::string getShortString () const
std::string getString () const
template<class Archive >
void serialize (Archive &ar, const unsigned int version)
 Serialize this object to a boost archive.

Static Public Attributes

static const uint128_t ZERO
 The NULL value.

Detailed Description

A base type for 128 bit unsigned integer values.

Definition at line 40 of file uint128_t.h.


Constructor & Destructor Documentation

lunchbox::uint128_t::uint128_t ( const uint64_t  low_ = 0) [inline]

Construct a new 128 bit integer with a default value.

Version:
1.0

Definition at line 47 of file uint128_t.h.

lunchbox::uint128_t::uint128_t ( const uint64_t  high_,
const uint64_t  low_ 
) [inline, explicit]

Construct a new 128 bit integer with default values.

Version:
1.0

Definition at line 54 of file uint128_t.h.

lunchbox::uint128_t::uint128_t ( const std::string &  string) [inline, explicit]

Construct a new 128 bit integer from a string representation.

Version:
1.3.2

Definition at line 61 of file uint128_t.h.


Member Function Documentation

std::string lunchbox::uint128_t::getShortString ( ) const [inline]
Returns:
a short, but not necessarily unique, string of the value.

Definition at line 181 of file uint128_t.h.

std::string lunchbox::uint128_t::getString ( ) const [inline]
Returns:
the full string representation of the value.

Definition at line 191 of file uint128_t.h.

const uint64_t& lunchbox::uint128_t::high ( ) const [inline]
Returns:
the reference to the high 64 bits of this 128 bit value.

Definition at line 173 of file uint128_t.h.

Referenced by lunchbox::UUID::isGenerated(), lunchbox::operator&(), lunchbox::operator+(), lunchbox::operator-(), lunchbox::operator|(), and serialize().

+ Here is the caller graph for this function:

uint64_t& lunchbox::uint128_t::high ( ) [inline]
Returns:
the reference to the high 64 bits of this 128 bit value.

Definition at line 178 of file uint128_t.h.

const uint64_t& lunchbox::uint128_t::low ( ) const [inline]
Returns:
the reference to the lower 64 bits of this 128 bit value.

Definition at line 171 of file uint128_t.h.

Referenced by lunchbox::operator&(), lunchbox::operator+(), lunchbox::operator-(), lunchbox::operator|(), and serialize().

+ Here is the caller graph for this function:

uint64_t& lunchbox::uint128_t::low ( ) [inline]
Returns:
the reference to the lower 64 bits of this 128 bit value.

Definition at line 176 of file uint128_t.h.

bool lunchbox::uint128_t::operator!= ( const uint128_t rhs) const [inline]
Returns:
true if the values are different, false otherwise.
Version:
1.0

Definition at line 94 of file uint128_t.h.

uint128_t& lunchbox::uint128_t::operator++ ( void  ) [inline]

Increment the value.

Version:
1.0

Definition at line 152 of file uint128_t.h.

uint128_t& lunchbox::uint128_t::operator-- ( void  ) [inline]

Decrement the value.

Version:
1.0

Definition at line 162 of file uint128_t.h.

bool lunchbox::uint128_t::operator< ( const uint128_t rhs) const [inline]
Returns:
true if this value is smaller than the RHS value.
Version:
1.0

Definition at line 101 of file uint128_t.h.

bool lunchbox::uint128_t::operator<= ( const uint128_t rhs) const [inline]
Returns:
true if this value is smaller or equal than the RHS value.
Version:
1.0

Definition at line 128 of file uint128_t.h.

uint128_t& lunchbox::uint128_t::operator= ( const uint128_t rhs) [inline]

Assign another 128 bit value.

Version:
1.0

Definition at line 65 of file uint128_t.h.

uint128_t& lunchbox::uint128_t::operator= ( const uint64_t  rhs) [inline]

Assign another 64 bit value.

Version:
1.1.1

Definition at line 73 of file uint128_t.h.

uint128_t& lunchbox::uint128_t::operator= ( const std::string &  from)

Assign an 128 bit value from a std::string.

Version:
1.0

Reimplemented in lunchbox::UUID.

bool lunchbox::uint128_t::operator== ( const uint128_t rhs) const [inline]
Returns:
true if the values are equal, false if not.
Version:
1.0

Definition at line 87 of file uint128_t.h.

bool lunchbox::uint128_t::operator> ( const uint128_t rhs) const [inline]
Returns:
true if this value is bigger than the rhs value.
Version:
1.0

Definition at line 114 of file uint128_t.h.

bool lunchbox::uint128_t::operator>= ( const uint128_t rhs) const [inline]
Returns:
true if this value is smaller or equal than the RHS value.
Version:
1.0

Definition at line 142 of file uint128_t.h.

template<class Archive >
void lunchbox::uint128_t::serialize ( Archive &  ar,
const unsigned int  version 
) [inline]

Serialize this object to a boost archive.

Version:
1.3.1

Definition at line 200 of file uint128_t.h.

References high(), and low().

+ Here is the call graph for this function:


Member Data Documentation

The NULL value.

Version:
1.1.1

Definition at line 207 of file uint128_t.h.


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