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