MC Protocol Serial C++ 0.2.3
MC protocol serial library for MCU-oriented environments
Loading...
Searching...
No Matches
std::span< T, Extent > Class Template Reference

#include <span_compat.hpp>

Public Types

using element_type = T
 
using value_type = typename mcprotocol_remove_cv< T >::type
 
using size_type = size_t
 
using difference_type = ptrdiff_t
 
using pointer = element_type *
 
using reference = element_type &
 
using iterator = pointer
 

Public Member Functions

constexpr span () noexcept=default
 
constexpr span (pointer ptr, size_type count) noexcept
 
constexpr span (pointer first, pointer last) noexcept
 
template<size_t N>
constexpr span (element_type(&arr)[N]) noexcept
 
template<typename U , size_t N>
constexpr span (array< U, N > &arr) noexcept
 
template<typename U , size_t N>
constexpr span (const array< U, N > &arr) noexcept
 
template<typename U , size_t OtherExtent>
constexpr span (const span< U, OtherExtent > &other) noexcept
 
constexpr iterator begin () const noexcept
 
constexpr iterator end () const noexcept
 
constexpr reference operator[] (size_type index) const noexcept
 
constexpr pointer data () const noexcept
 
constexpr size_type size () const noexcept
 
constexpr bool empty () const noexcept
 
constexpr span first (size_type count) const noexcept
 
constexpr span subspan (size_type offset) const noexcept
 
constexpr span subspan (size_type offset, size_type count) const noexcept
 

Static Public Attributes

static constexpr size_type extent = Extent
 

Detailed Description

template<typename T, size_t Extent = dynamic_extent>
class std::span< T, Extent >

Definition at line 42 of file span_compat.hpp.

Member Typedef Documentation

◆ difference_type

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::difference_type = ptrdiff_t

Definition at line 47 of file span_compat.hpp.

◆ element_type

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::element_type = T

Definition at line 44 of file span_compat.hpp.

◆ iterator

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::iterator = pointer

Definition at line 50 of file span_compat.hpp.

◆ pointer

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::pointer = element_type*

Definition at line 48 of file span_compat.hpp.

◆ reference

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::reference = element_type&

Definition at line 49 of file span_compat.hpp.

◆ size_type

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::size_type = size_t

Definition at line 46 of file span_compat.hpp.

◆ value_type

template<typename T , size_t Extent = dynamic_extent>
using std::span< T, Extent >::value_type = typename mcprotocol_remove_cv<T>::type

Definition at line 45 of file span_compat.hpp.

Constructor & Destructor Documentation

◆ span() [1/7]

template<typename T , size_t Extent = dynamic_extent>
constexpr std::span< T, Extent >::span ( )
constexprdefaultnoexcept

◆ span() [2/7]

template<typename T , size_t Extent = dynamic_extent>
constexpr std::span< T, Extent >::span ( pointer  ptr,
size_type  count 
)
inlineconstexprnoexcept

Definition at line 56 of file span_compat.hpp.

◆ span() [3/7]

template<typename T , size_t Extent = dynamic_extent>
constexpr std::span< T, Extent >::span ( pointer  first,
pointer  last 
)
inlineconstexprnoexcept

Definition at line 58 of file span_compat.hpp.

◆ span() [4/7]

template<typename T , size_t Extent = dynamic_extent>
template<size_t N>
constexpr std::span< T, Extent >::span ( element_type(&)  arr[N])
inlineconstexprnoexcept

Definition at line 62 of file span_compat.hpp.

◆ span() [5/7]

template<typename T , size_t Extent = dynamic_extent>
template<typename U , size_t N>
constexpr std::span< T, Extent >::span ( array< U, N > &  arr)
inlineconstexprnoexcept

Definition at line 65 of file span_compat.hpp.

◆ span() [6/7]

template<typename T , size_t Extent = dynamic_extent>
template<typename U , size_t N>
constexpr std::span< T, Extent >::span ( const array< U, N > &  arr)
inlineconstexprnoexcept

Definition at line 68 of file span_compat.hpp.

◆ span() [7/7]

template<typename T , size_t Extent = dynamic_extent>
template<typename U , size_t OtherExtent>
constexpr std::span< T, Extent >::span ( const span< U, OtherExtent > &  other)
inlineconstexprnoexcept

Definition at line 71 of file span_compat.hpp.

Member Function Documentation

◆ begin()

template<typename T , size_t Extent = dynamic_extent>
constexpr iterator std::span< T, Extent >::begin ( ) const
inlineconstexprnoexcept

Definition at line 74 of file span_compat.hpp.

◆ data()

template<typename T , size_t Extent = dynamic_extent>
constexpr pointer std::span< T, Extent >::data ( ) const
inlineconstexprnoexcept

Definition at line 77 of file span_compat.hpp.

◆ empty()

template<typename T , size_t Extent = dynamic_extent>
constexpr bool std::span< T, Extent >::empty ( ) const
inlineconstexprnoexcept

Definition at line 79 of file span_compat.hpp.

◆ end()

template<typename T , size_t Extent = dynamic_extent>
constexpr iterator std::span< T, Extent >::end ( ) const
inlineconstexprnoexcept

Definition at line 75 of file span_compat.hpp.

◆ first()

template<typename T , size_t Extent = dynamic_extent>
constexpr span std::span< T, Extent >::first ( size_type  count) const
inlineconstexprnoexcept

Definition at line 81 of file span_compat.hpp.

◆ operator[]()

template<typename T , size_t Extent = dynamic_extent>
constexpr reference std::span< T, Extent >::operator[] ( size_type  index) const
inlineconstexprnoexcept

Definition at line 76 of file span_compat.hpp.

◆ size()

template<typename T , size_t Extent = dynamic_extent>
constexpr size_type std::span< T, Extent >::size ( ) const
inlineconstexprnoexcept

Definition at line 78 of file span_compat.hpp.

◆ subspan() [1/2]

template<typename T , size_t Extent = dynamic_extent>
constexpr span std::span< T, Extent >::subspan ( size_type  offset) const
inlineconstexprnoexcept

Definition at line 83 of file span_compat.hpp.

◆ subspan() [2/2]

template<typename T , size_t Extent = dynamic_extent>
constexpr span std::span< T, Extent >::subspan ( size_type  offset,
size_type  count 
) const
inlineconstexprnoexcept

Definition at line 87 of file span_compat.hpp.

Member Data Documentation

◆ extent

template<typename T , size_t Extent = dynamic_extent>
constexpr size_type std::span< T, Extent >::extent = Extent
staticconstexpr

Definition at line 52 of file span_compat.hpp.


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