|
cxxomfort
rel.20211024
Simple backports for C++ - https://ryan.gulix.cl/fossil.cgi/cxxomfort/
|
Implementations and backports tied to <iterator>.
More...
Classes | |
| struct | is_contiguous_access_iterator< Iterator, Tag > |
| Tags an iterator as a contiguous access type iterator. More... | |
Namespaces | |
| cxxomfort | |
Namespace of the cxxomfort library. | |
| cxxomfort::cxxostd | |
| Backports made available by cxxomfort. | |
| cxxomfort::fix | |
| Fixes for implementation issues in std. | |
Functions | |
| template<typename It > | |
| CXXO_CONSTEXPR14 std::reverse_iterator< It > | make_reverse_iterator (It i) |
| Constructs the reverse_iterator for a given iterator. More... | |
| template<typename T > | |
| auto | cdata (C const &container) -> decltype(container.data()) |
Returns container.data() as a const-pointer for a given container. More... | |
| template<typename It , typename = typename std::enable_if<std::is_pointer<It>::value, bool>> | |
| constexpr It | static_next (It const p) noexcept |
Given a compile-time const (or constexpr ) iterator, returns the iterator to the next position. | |
| template<typename It , typename = typename std::enable_if<std::is_pointer<It>::value, bool>> | |
| constexpr It | static_prev (It const p) noexcept |
Given a compile-time const (or constexpr ) iterator, returns the iterator to the previous position. More... | |
Implementations and backports tied to <iterator>.
| struct cxxomfort::fix::is_contiguous_access_iterator |
Tags an iterator as a contiguous access type iterator.
Given an iterator type I, indicates whether the type either:
contiguous_iterator_tag tagPre C++17, this can only be implemented as an heuristic and can not determine contiguousness of storage types where the iterator is being wrapped, in which cases it will always declare false .
One such example is <array> and <vector> iterators in MSVC, in versions that don't support disabling the debug iterator mode.
1.8.13