Bitcoin ABC 0.30.5
P2P Digital Currency
|
#include <rcu.h>
Public Member Functions | |
RCUPtr () | |
~RCUPtr () | |
RCUPtr (const RCUPtr &src) | |
Copy semantic. More... | |
RCUPtr & | operator= (const RCUPtr &rhs) |
template<typename U > | |
RCUPtr (const RCUPtr< U > &src) | |
Implicit converting constructor from RCUPtr to RCUPtr<T>, where U * is implicitely convertible to T *. More... | |
template<typename U > | |
RCUPtr & | operator= (const RCUPtr< U > &rhs) |
RCUPtr (RCUPtr &&src) | |
Move semantic. More... | |
RCUPtr & | operator= (RCUPtr &&rhs) |
T * | get () |
Get allows to access the undelying pointer. More... | |
const T * | get () const |
T * | release () |
Release transfers ownership of the pointer from RCUPtr to the caller. More... | |
T * | operator-> () |
Operator overloading for convenience. More... | |
const T * | operator-> () const |
T & | operator* () |
const T & | operator* () const |
operator bool () const | |
Static Public Member Functions | |
static RCUPtr | acquire (T *&ptrIn) |
Acquire ownership of some pointer. More... | |
template<typename... Args> | |
static RCUPtr | make (Args &&...args) |
Construct a new object that is owned by the pointer. More... | |
static RCUPtr | copy (T *ptr) |
Construct a new RCUPtr without transferring owership. More... | |
Private Member Functions | |
RCUPtr (T *ptrIn) | |
Private Attributes | |
T * | ptr |
Friends | |
bool | operator== (const RCUPtr &lhs, const T *rhs) |
Equality checks. More... | |
bool | operator== (const RCUPtr &lhs, const RCUPtr &rhs) |
bool | operator!= (const RCUPtr &lhs, const T *rhs) |
bool | operator!= (const RCUPtr &lhs, const RCUPtr &rhs) |
std::ostream & | operator<< (std::ostream &stream, const RCUPtr &rhs) |
ostream support. More... | |
|
inline |
|
inline |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
|
inline |
|
friend |
|
friend |
|
friend |