38#ifndef PMEMOBJ_PEXT_HPP
39#define PMEMOBJ_PEXT_HPP
117template <
typename T,
typename Y>
128template <
typename T,
typename Y>
139template <
typename T,
typename Y>
150template <
typename T,
typename Y>
161template <
typename T,
typename Y>
172template <
typename T,
typename Y>
183template <
typename T,
typename Y>
194template <
typename T,
typename Y>
205template <
typename T,
typename Y>
216template <
typename T,
typename Y>
227template <
typename T,
typename Y>
238template <
typename T,
typename Y>
249template <
typename T,
typename Y>
260template <
typename T,
typename Y>
271template <
typename T,
typename Y>
282template <
typename T,
typename Y>
293template <
typename T,
typename Y>
295operator<<=(p<T> &lhs,
const p<Y> &rhs)
297 lhs.get_rw() = lhs.get_ro() << rhs.get_ro();
304template <
typename T,
typename Y>
306operator<<=(p<T> &lhs,
const Y &rhs)
308 lhs.get_rw() = lhs.get_ro() << rhs;
315template <
typename T,
typename Y>
326template <
typename T,
typename Y>
342struct numeric_limits<pmem::obj::p<T>> :
public numeric_limits<T> {
344 static constexpr bool is_specialized =
true;
Resides on pmem class.
Definition: p.hpp:64
T & get_rw()
Retrieves read-write reference of the object.
Definition: p.hpp:141
const T & get_ro() const noexcept
Retrieves read-only const reference of the object.
Definition: p.hpp:156
Resides on pmem property template.
std::ostream & operator<<(std::ostream &os, persistent_ptr< T > const &pptr)
Ostream operator for the persistent pointer.
Definition: persistent_ptr.hpp:618
p< T > & operator--(p< T > &pp)
Prefix decrement operator overload.
Definition: pext.hpp:86
p< T > & operator|=(p< T > &lhs, const p< Y > &rhs)
Bitwise OR assignment operator overload.
Definition: pext.hpp:251
p< T > & operator%=(p< T > &lhs, const p< Y > &rhs)
Modulo assignment operator overload.
Definition: pext.hpp:207
p< T > & operator-=(p< T > &lhs, const p< Y > &rhs)
Subtraction assignment operator overload.
Definition: pext.hpp:141
p< T > & operator/=(p< T > &lhs, const p< Y > &rhs)
Division assignment operator overload.
Definition: pext.hpp:185
p< T > & operator^=(p< T > &lhs, const p< Y > &rhs)
Bitwise XOR assignment operator overload.
Definition: pext.hpp:273
std::istream & operator>>(std::istream &is, p< T > &pp)
Istream operator overload.
Definition: pext.hpp:66
p< T > & operator>>=(p< T > &lhs, const p< Y > &rhs)
Bitwise right shift assignment operator overload.
Definition: pext.hpp:317
p< T > & operator&=(p< T > &lhs, const p< Y > &rhs)
Bitwise AND assignment operator overload.
Definition: pext.hpp:229
p< T > & operator++(p< T > &pp)
Prefix increment operator overload.
Definition: pext.hpp:76
p< T > & operator+=(p< T > &lhs, const p< Y > &rhs)
Addition assignment operator overload.
Definition: pext.hpp:119
p< T > & operator*=(p< T > &lhs, const p< Y > &rhs)
Multiplication assignment operator overload.
Definition: pext.hpp:163