Template used in implementation of some iterators. More...
#include <eagine/iterator.hpp>
Public Types | |
using | value_type = T |
Alias for the value type. | |
using | difference_type = decltype(std::declval< T >() - std::declval< T >()) |
Alias for the difference type. | |
Public Member Functions | |
constexpr | basic_iterable_type ()=default |
Default constructor. | |
constexpr | basic_iterable_type (T value) noexcept |
Initializing constructor. | |
constexpr | operator T () const noexcept |
Explicit conversion to the wrapped iterable type. | |
constexpr auto | operator++ () noexcept -> auto & |
Pre-increment operator. | |
constexpr auto | operator+= (difference_type d) noexcept -> auto & |
Addition operator. | |
constexpr auto | operator++ (int) noexcept -> Derived |
Post-increment operator. | |
constexpr auto | operator-- () noexcept -> auto & |
Pre-decrement operator. | |
constexpr auto | operator-= (difference_type d) noexcept -> auto & |
Subtraction operator. | |
constexpr auto | operator-- (int) noexcept -> Derived |
Post-decrement operator. | |
Friends | |
constexpr friend auto | operator+ (basic_iterable_type a, difference_type d) noexcept |
Addition operator. | |
constexpr friend auto | operator- (basic_iterable_type a, difference_type d) noexcept |
Difference operator. | |
constexpr friend auto | operator- (basic_iterable_type a, basic_iterable_type b) noexcept -> difference_type |
Subtraction operator. | |
constexpr friend auto | operator== (basic_iterable_type a, basic_iterable_type b) noexcept |
Equality comparison. | |
constexpr friend auto | operator!= (basic_iterable_type a, basic_iterable_type b) noexcept |
Non-equality comparison. | |
constexpr friend auto | operator< (basic_iterable_type a, basic_iterable_type b) noexcept |
Less-than comparison. | |
constexpr friend auto | operator<= (basic_iterable_type a, basic_iterable_type b) noexcept |
Less-equal comparison. | |
constexpr friend auto | operator> (basic_iterable_type a, basic_iterable_type b) noexcept |
Greater-than comparison. | |
constexpr friend auto | operator>= (basic_iterable_type a, basic_iterable_type b) noexcept |
Greater-equal comparison. | |
Template used in implementation of some iterators.
T | the wrapped iterable type. |
Derived | the type derived from this template. |