|
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.