C++ Actor Framework 1.0.0
Loading...
Searching...
No Matches
caf::span< T > Class Template Reference

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 = std::remove_cv_t<T>
 
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 = std::enable_if_t< detail::has_convertible_data_member_v<C, value_type>>>
 span (C &xs) noexcept
 
template<class C , class = std::enable_if_t< detail::has_convertible_data_member_v<C, value_type>>>
 span (const C &xs) noexcept
 
constexpr span (const span &) noexcept=default
 
spanoperator= (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 subspan (size_t offset) const
 
constexpr span first (size_t num_bytes) const
 
constexpr span last (size_t num_bytes) const
 

Detailed Description

template<class T>
class caf::span< T >

A C++11/14 drop-in replacement for C++20's std::span without support for static extents.


The documentation for this class was generated from the following files: