rll/memory/observer_ptr.h file

Namespaces

namespace rll
Contract-programming related functions and classes.

Classes

template <typename T>
class rll::observer_ptr
A smart pointer that holds a pointer to a value, but does not own it.

Functions

template <typename T>
auto make_observer(T* ptr) →  observer_ptr<T> constexpr noexcept
template <typename T, typename U>
auto operator!=(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept
template <typename T, typename U>
auto operator<(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept
template <typename T, typename U>
auto operator<=(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept
template <typename T, typename U>
auto operator==(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept
template <typename T, typename U>
auto operator>(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept
template <typename T, typename U>
auto operator>=(observer_ptr<T> const& lhs, observer_ptr<U> const& rhs) →  bool constexpr noexcept