PMDK C++ bindings
1.11
This is the C++ bindings documentation for PMDK's libpmemobj.
|
Resides on pmem class. More...
#include <libpmemobj++/p.hpp>
Public Member Functions | |
p (const T &_val) noexcept | |
Value constructor. More... | |
p ()=default | |
Defaulted constructor. | |
p & | operator= (const p &rhs) |
Assignment operator. More... | |
template<typename Y , typename = typename std::enable_if< std::is_convertible<Y, T>::value>::type> | |
p & | operator= (const p< Y > &rhs) |
Converting assignment operator from a different p<>. More... | |
operator T () const noexcept | |
Conversion operator back to the underlying type. | |
T & | get_rw () |
Retrieves read-write reference of the object. More... | |
const T & | get_ro () const noexcept |
Retrieves read-only const reference of the object. More... | |
void | swap (p &other) |
Swaps two p objects of the same type. More... | |
Resides on pmem class.
p class is a property-like template class that has to be used for all variables (excluding persistent pointers), which are used in pmemobj transactions. The p property makes sure that changes to a variable within a transaction are made atomically with respect to persistence. It does it by creating a snapshot of the variable when modified in the transaction scope. The p class is not designed to be used with compound types. For that see the persistent_ptr.
|
inlinenoexcept |
Value constructor.
Directly assigns a value to the underlying storage.
_val | const reference to the value to be assigned. |
|
inlinenoexcept |
Retrieves read-only const reference of the object.
This method has no transaction side effects.
|
inline |
Retrieves read-write reference of the object.
The entire object is automatically added to the transaction.
pmem::transaction_error | when adding the object to the transaction failed. |
|
inline |
Assignment operator.
The p<> class property assignment within a transaction automatically registers this operation so that a rollback is possible.
pmem::transaction_error | when adding the object to the transaction failed. |
|
inline |
Converting assignment operator from a different p<>.
Available only for convertible types. Just like regular assignment, also automatically registers itself in a transaction.
pmem::transaction_error | when adding the object to the transaction failed. |
|
inline |
Swaps two p objects of the same type.
pmem::transaction_error | when adding the object to the transaction failed. |