CAF 0.17.6
|
A C++11/14 drop-in replacement for C++20's std::span
without support for static extents.
More...
#include <span.hpp>
Public Types | |
using | element_type = T |
using | value_type = typename std::remove_cv< T >::type |
using | index_type = size_t |
using | difference_type = ptrdiff_t |
using | pointer = T * |
using | const_pointer = const T * |
using | reference = T & |
using | const_reference = T & |
using | iterator = pointer |
using | const_iterator = const_pointer |
using | reverse_iterator = std::reverse_iterator< iterator > |
using | const_reverse_iterator = std::reverse_iterator< const_iterator > |
Public Member Functions | |
constexpr | span (pointer ptr, size_t size) |
constexpr | span (pointer first, pointer last) |
template<size_t Size> | |
constexpr | span (element_type(&arr)[Size]) noexcept |
template<class C , class E = detail::enable_if_t<detail::has_data_member<C>::value>> | |
span (C &xs) noexcept | |
template<class C , class E = detail::enable_if_t<detail::has_data_member<C>::value>> | |
span (const C &xs) noexcept | |
constexpr | span (const span &) noexcept=default |
span & | operator= (const span &) noexcept=default |
constexpr iterator | begin () const noexcept |
constexpr const_iterator | cbegin () const noexcept |
constexpr iterator | end () const noexcept |
constexpr const_iterator | cend () const noexcept |
constexpr reverse_iterator | rbegin () const noexcept |
constexpr const_reverse_iterator | crbegin () const noexcept |
constexpr reverse_iterator | rend () const noexcept |
constexpr const_reverse_iterator | crend () const noexcept |
constexpr reference | operator[] (size_t index) const noexcept |
constexpr reference | front () const noexcept |
constexpr reference | back () const noexcept |
constexpr size_t | size () const noexcept |
constexpr size_t | size_bytes () const noexcept |
constexpr bool | empty () const noexcept |
constexpr pointer | data () const noexcept |
constexpr span | subspan (size_t offset, size_t num_bytes) const |
constexpr span | first (size_t num_bytes) const |
constexpr span | last (size_t num_bytes) const |
A C++11/14 drop-in replacement for C++20's std::span
without support for static extents.