detail#

Fully qualified name: omni::detail

namespace detail#

Internal implementation details namespace.

Classes#

PointerIterator

This iterator adapter wraps a pointer type into a class. It does not change the semantics of any operations from the fundamental logic of pointers. There are no bounds checks, there is no additional safety.

Functions#

constexpr bool operator!=(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test for inequality between lhs and rhs .

constexpr PointerIterator< TPointer, TContainer > operator+(typename PointerIterator< TPointer, TContainer >::difference_type dist, const PointerIterator< TPointer, TContainer > &iter) noexcept

Get an iterator dist elements forward from iter .

constexpr auto operator-(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept -> decltype(lhs.operator->() - rhs.operator->())

Get the distance between iterators lhs and rhs . If lhs < rhs , this value will be negative.

constexpr bool operator<(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test that lhs points to something less than rhs .

constexpr bool operator<=(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test that lhs points to something less than or equal to rhs .

constexpr bool operator==(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test for equality between lhs and rhs .

constexpr bool operator>(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test that lhs points to something greater than rhs .

constexpr bool operator>=(const PointerIterator< TPointer, TContainer > &lhs, const PointerIterator< UPointer, TContainer > &rhs) noexcept

Test that lhs points to something greater than or equal to rhs .