Bitcoin Core  0.15.99
P2P Digital Currency
Public Member Functions | Protected Attributes | Static Protected Attributes | Friends | List of all members
base_blob< BITS > Class Template Reference

Template base class for fixed-sized opaque blobs. More...

#include <uint256.h>

Public Member Functions

 base_blob ()
 
 base_blob (const std::vector< unsigned char > &vch)
 
bool IsNull () const
 
void SetNull ()
 
int Compare (const base_blob &other) const
 
std::string GetHex () const
 
void SetHex (const char *psz)
 
void SetHex (const std::string &str)
 
std::string ToString () const
 
unsigned char * begin ()
 
unsigned char * end ()
 
const unsigned char * begin () const
 
const unsigned char * end () const
 
unsigned int size () const
 
uint64_t GetUint64 (int pos) const
 
template<typename Stream >
void Serialize (Stream &s) const
 
template<typename Stream >
void Unserialize (Stream &s)
 

Protected Attributes

uint8_t data [WIDTH]
 

Static Protected Attributes

static constexpr int WIDTH = BITS / 8
 

Friends

bool operator== (const base_blob &a, const base_blob &b)
 
bool operator!= (const base_blob &a, const base_blob &b)
 
bool operator< (const base_blob &a, const base_blob &b)
 

Detailed Description

template<unsigned int BITS>
class base_blob< BITS >

Template base class for fixed-sized opaque blobs.

Definition at line 19 of file uint256.h.

Constructor & Destructor Documentation

template<unsigned int BITS>
base_blob< BITS >::base_blob ( )
inline

Definition at line 25 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
base_blob< BITS >::base_blob ( const std::vector< unsigned char > &  vch)
explicit

Definition at line 14 of file uint256.cpp.

Here is the call graph for this function:

Member Function Documentation

template<unsigned int BITS>
unsigned char* base_blob< BITS >::begin ( )
inline

Definition at line 56 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
const unsigned char* base_blob< BITS >::begin ( ) const
inline

Definition at line 66 of file uint256.h.

template<unsigned int BITS>
int base_blob< BITS >::Compare ( const base_blob< BITS > &  other) const
inline

Definition at line 45 of file uint256.h.

template<unsigned int BITS>
unsigned char* base_blob< BITS >::end ( )
inline

Definition at line 61 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
const unsigned char* base_blob< BITS >::end ( ) const
inline

Definition at line 71 of file uint256.h.

template<unsigned int BITS>
std::string base_blob< BITS >::GetHex ( ) const

Definition at line 21 of file uint256.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

template<unsigned int BITS>
uint64_t base_blob< BITS >::GetUint64 ( int  pos) const
inline

Definition at line 81 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
bool base_blob< BITS >::IsNull ( ) const
inline

Definition at line 32 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
template<typename Stream >
void base_blob< BITS >::Serialize ( Stream &  s) const
inline

Definition at line 95 of file uint256.h.

template<unsigned int BITS>
void base_blob< BITS >::SetHex ( const char *  psz)

Definition at line 27 of file uint256.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

template<unsigned int BITS>
void base_blob< BITS >::SetHex ( const std::string &  str)

Definition at line 56 of file uint256.cpp.

template<unsigned int BITS>
void base_blob< BITS >::SetNull ( )
inline

Definition at line 40 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
unsigned int base_blob< BITS >::size ( ) const
inline

Definition at line 76 of file uint256.h.

Here is the caller graph for this function:

template<unsigned int BITS>
std::string base_blob< BITS >::ToString ( ) const

Definition at line 62 of file uint256.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

template<unsigned int BITS>
template<typename Stream >
void base_blob< BITS >::Unserialize ( Stream &  s)
inline

Definition at line 101 of file uint256.h.

Friends And Related Function Documentation

template<unsigned int BITS>
bool operator!= ( const base_blob< BITS > &  a,
const base_blob< BITS > &  b 
)
friend

Definition at line 48 of file uint256.h.

template<unsigned int BITS>
bool operator< ( const base_blob< BITS > &  a,
const base_blob< BITS > &  b 
)
friend

Definition at line 49 of file uint256.h.

template<unsigned int BITS>
bool operator== ( const base_blob< BITS > &  a,
const base_blob< BITS > &  b 
)
friend

Definition at line 47 of file uint256.h.

Member Data Documentation

template<unsigned int BITS>
uint8_t base_blob< BITS >::data[WIDTH]
protected

Definition at line 23 of file uint256.h.

template<unsigned int BITS>
constexpr int base_blob< BITS >::WIDTH = BITS / 8
staticprotected

Definition at line 22 of file uint256.h.


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