NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.5: NDN, CCN, CCNx, content centric networks
API Documentation
nonstd::span_lite::span< T, Extent > Class Template Reference

#include <span-lite.hpp>

Public Types

enum  { extent = Extent }
 
typedef T element_type
 
typedef std11::remove_cv< T >::type value_type
 
typedef T & reference
 
typedef T * pointer
 
typedef T const * const_pointer
 
typedef T const & const_reference
 
typedef size_t size_type
 
typedef extent_t extent_type
 
typedef pointer iterator
 
typedef const_pointer const_iterator
 
typedef std::ptrdiff_t difference_type
 
typedef std::reverse_iterator< iteratorreverse_iterator
 
typedef std::reverse_iterator< const_iteratorconst_reverse_iterator
 

Public Member Functions

 span_REQUIRES_0 ((Extent==0)||(Extent==dynamic_extent)) span_constexpr span() span_noexcept
 
span_constexpr_exp span (pointer ptr, size_type count)
 
span_constexpr_exp span (pointer first, pointer last)
 
template<std::size_t N span_REQUIRES_T>
span_constexpr span (element_type(&arr)[N]) span_noexcept
 
span_constexpr span (span const &other) span_noexcept
 
 ~span () span_noexcept
 
span_constexpr14 spanoperator= (span const &other) span_noexcept
 
template<class OtherElementType , extent_type OtherExtent span_REQUIRES_T>
span_constexpr_exp span (span< OtherElementType, OtherExtent > const &other) span_noexcept
 
template<extent_type Count>
span_constexpr_exp span< element_type, Count > first () const
 
template<extent_type Count>
span_constexpr_exp span< element_type, Count > last () const
 
template<size_type Offset, extent_type Count>
span_constexpr_exp span< element_type, Count > subspan () const
 
span_constexpr_exp span< element_type, dynamic_extentfirst (size_type count) const
 
span_constexpr_exp span< element_type, dynamic_extentlast (size_type count) const
 
span_constexpr_exp span< element_type, dynamic_extentsubspan (size_type offset, size_type count=static_cast< size_type >(dynamic_extent)) const
 
span_constexpr size_type size () const span_noexcept
 
span_constexpr std::ptrdiff_t ssize () const span_noexcept
 
span_constexpr size_type size_bytes () const span_noexcept
 
span_nodiscard span_constexpr bool empty () const span_noexcept
 
span_constexpr_exp reference operator[] (size_type idx) const
 
span_constexpr pointer data () const span_noexcept
 
span_constexpr_exp reference front () const span_noexcept
 
span_constexpr_exp reference back () const span_noexcept
 
span_constexpr iterator begin () const span_noexcept
 
span_constexpr iterator end () const span_noexcept
 
span_constexpr const_iterator cbegin () const span_noexcept
 
span_constexpr const_iterator cend () const span_noexcept
 
span_constexpr reverse_iterator rbegin () const span_noexcept
 
span_constexpr reverse_iterator rend () const span_noexcept
 
span_constexpr const_reverse_iterator crbegin () const span_noexcept
 
span_constexpr const_reverse_iterator crend () const span_noexcept
 

Detailed Description

template<class T, extent_t Extent>
class nonstd::span_lite::span< T, Extent >

Definition at line 570 of file span-lite.hpp.

Member Typedef Documentation

◆ element_type

template<class T, extent_t Extent>
typedef T nonstd::span_lite::span< T, Extent >::element_type

Definition at line 885 of file span-lite.hpp.

◆ value_type

template<class T, extent_t Extent>
typedef std11::remove_cv< T >::type nonstd::span_lite::span< T, Extent >::value_type

Definition at line 886 of file span-lite.hpp.

◆ reference

template<class T, extent_t Extent>
typedef T& nonstd::span_lite::span< T, Extent >::reference

Definition at line 888 of file span-lite.hpp.

◆ pointer

template<class T, extent_t Extent>
typedef T* nonstd::span_lite::span< T, Extent >::pointer

Definition at line 889 of file span-lite.hpp.

◆ const_pointer

template<class T, extent_t Extent>
typedef T const* nonstd::span_lite::span< T, Extent >::const_pointer

Definition at line 890 of file span-lite.hpp.

◆ const_reference

template<class T, extent_t Extent>
typedef T const& nonstd::span_lite::span< T, Extent >::const_reference

Definition at line 891 of file span-lite.hpp.

◆ size_type

template<class T, extent_t Extent>
typedef size_t nonstd::span_lite::span< T, Extent >::size_type

Definition at line 893 of file span-lite.hpp.

◆ extent_type

template<class T, extent_t Extent>
typedef extent_t nonstd::span_lite::span< T, Extent >::extent_type

Definition at line 894 of file span-lite.hpp.

◆ iterator

template<class T, extent_t Extent>
typedef pointer nonstd::span_lite::span< T, Extent >::iterator

Definition at line 896 of file span-lite.hpp.

◆ const_iterator

template<class T, extent_t Extent>
typedef const_pointer nonstd::span_lite::span< T, Extent >::const_iterator

Definition at line 897 of file span-lite.hpp.

◆ difference_type

template<class T, extent_t Extent>
typedef std::ptrdiff_t nonstd::span_lite::span< T, Extent >::difference_type

Definition at line 899 of file span-lite.hpp.

◆ reverse_iterator

template<class T, extent_t Extent>
typedef std::reverse_iterator< iterator > nonstd::span_lite::span< T, Extent >::reverse_iterator

Definition at line 901 of file span-lite.hpp.

◆ const_reverse_iterator

template<class T, extent_t Extent>
typedef std::reverse_iterator< const_iterator > nonstd::span_lite::span< T, Extent >::const_reverse_iterator

Definition at line 902 of file span-lite.hpp.

Member Enumeration Documentation

◆ anonymous enum

template<class T, extent_t Extent>
anonymous enum
Enumerator
extent 

Definition at line 905 of file span-lite.hpp.

Constructor & Destructor Documentation

◆ span() [1/5]

template<class T, extent_t Extent>
span_constexpr_exp nonstd::span_lite::span< T, Extent >::span ( pointer  ptr,
size_type  count 
)
inline

◆ span() [2/5]

template<class T, extent_t Extent>
span_constexpr_exp nonstd::span_lite::span< T, Extent >::span ( pointer  first,
pointer  last 
)
inline

Definition at line 973 of file span-lite.hpp.

References span_EXPECTS, and span_REQUIRES_T.

◆ span() [3/5]

template<class T, extent_t Extent>
template<std::size_t N span_REQUIRES_T>
span_constexpr nonstd::span_lite::span< T, Extent >::span ( element_type(&)  arr[N])
inline

◆ span() [4/5]

template<class T, extent_t Extent>
span_constexpr nonstd::span_lite::span< T, Extent >::span ( span< T, Extent > const &  other)
inline

Definition at line 1118 of file span-lite.hpp.

◆ ~span()

template<class T, extent_t Extent>
nonstd::span_lite::span< T, Extent >::~span ( )
inline

Definition at line 1123 of file span-lite.hpp.

◆ span() [5/5]

template<class T, extent_t Extent>
template<class OtherElementType , extent_type OtherExtent span_REQUIRES_T>
span_constexpr_exp nonstd::span_lite::span< T, Extent >::span ( span< OtherElementType, OtherExtent > const &  other)
inline

Member Function Documentation

◆ span_REQUIRES_0()

template<class T, extent_t Extent>
nonstd::span_lite::span< T, Extent >::span_REQUIRES_0 ( (Extent==0)||(Extent==dynamic_extent )
inline

◆ operator=()

template<class T, extent_t Extent>
span_constexpr14 span& nonstd::span_lite::span< T, Extent >::operator= ( span< T, Extent > const &  other)
inline

Definition at line 1126 of file span-lite.hpp.

References span_REQUIRES_T.

◆ first() [1/2]

template<class T, extent_t Extent>
template<extent_type Count>
span_constexpr_exp span< element_type, Count > nonstd::span_lite::span< T, Extent >::first ( ) const
inline

◆ last() [1/2]

template<class T, extent_t Extent>
template<extent_type Count>
span_constexpr_exp span< element_type, Count > nonstd::span_lite::span< T, Extent >::last ( ) const
inline

◆ subspan() [1/2]

template<class T, extent_t Extent>
template<size_type Offset, extent_type Count>
span_constexpr_exp span< element_type, Count > nonstd::span_lite::span< T, Extent >::subspan ( ) const
inline

◆ first() [2/2]

template<class T, extent_t Extent>
span_constexpr_exp span< element_type, dynamic_extent > nonstd::span_lite::span< T, Extent >::first ( size_type  count) const
inline

◆ last() [2/2]

template<class T, extent_t Extent>
span_constexpr_exp span< element_type, dynamic_extent > nonstd::span_lite::span< T, Extent >::last ( size_type  count) const
inline

◆ subspan() [2/2]

template<class T, extent_t Extent>
span_constexpr_exp span< element_type, dynamic_extent > nonstd::span_lite::span< T, Extent >::subspan ( size_type  offset,
size_type  count = static_cast<size_type>(dynamic_extent) 
) const
inline

◆ size()

◆ ssize()

template<class T, extent_t Extent>
span_constexpr std::ptrdiff_t nonstd::span_lite::span< T, Extent >::ssize ( ) const
inline

Definition at line 1220 of file span-lite.hpp.

◆ size_bytes()

template<class T, extent_t Extent>
span_constexpr size_type nonstd::span_lite::span< T, Extent >::size_bytes ( ) const
inline

◆ empty()

template<class T, extent_t Extent>
span_nodiscard span_constexpr bool nonstd::span_lite::span< T, Extent >::empty ( ) const
inline

Definition at line 1230 of file span-lite.hpp.

References nonstd::span_lite::size().

◆ operator[]()

template<class T, extent_t Extent>
span_constexpr_exp reference nonstd::span_lite::span< T, Extent >::operator[] ( size_type  idx) const
inline

◆ data()

template<class T, extent_t Extent>
span_constexpr pointer nonstd::span_lite::span< T, Extent >::data ( ) const
inline

Definition at line 1270 of file span-lite.hpp.

Referenced by nonstd::span_lite::span< T, Extent >::crend().

◆ front()

template<class T, extent_t Extent>
span_constexpr_exp reference nonstd::span_lite::span< T, Extent >::front ( ) const
inline

Definition at line 1277 of file span-lite.hpp.

References span_EXPECTS.

◆ back()

template<class T, extent_t Extent>
span_constexpr_exp reference nonstd::span_lite::span< T, Extent >::back ( ) const
inline

◆ begin()

template<class T, extent_t Extent>
span_constexpr iterator nonstd::span_lite::span< T, Extent >::begin ( ) const
inline

Definition at line 1307 of file span-lite.hpp.

Referenced by nonstd::span_lite::span< T, Extent >::crend().

◆ end()

template<class T, extent_t Extent>
span_constexpr iterator nonstd::span_lite::span< T, Extent >::end ( ) const
inline

Definition at line 1316 of file span-lite.hpp.

References nonstd::span_lite::size().

Referenced by nonstd::span_lite::span< T, Extent >::crend().

◆ cbegin()

template<class T, extent_t Extent>
span_constexpr const_iterator nonstd::span_lite::span< T, Extent >::cbegin ( ) const
inline

Definition at line 1325 of file span-lite.hpp.

◆ cend()

template<class T, extent_t Extent>
span_constexpr const_iterator nonstd::span_lite::span< T, Extent >::cend ( ) const
inline

Definition at line 1334 of file span-lite.hpp.

References nonstd::span_lite::size().

◆ rbegin()

template<class T, extent_t Extent>
span_constexpr reverse_iterator nonstd::span_lite::span< T, Extent >::rbegin ( ) const
inline

Definition at line 1343 of file span-lite.hpp.

◆ rend()

template<class T, extent_t Extent>
span_constexpr reverse_iterator nonstd::span_lite::span< T, Extent >::rend ( ) const
inline

Definition at line 1348 of file span-lite.hpp.

◆ crbegin()

template<class T, extent_t Extent>
span_constexpr const_reverse_iterator nonstd::span_lite::span< T, Extent >::crbegin ( ) const
inline

Definition at line 1353 of file span-lite.hpp.

◆ crend()


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