RADLib
RADical C++ application framework
RADCore::RADSpan< T > Class Template Reference

Non-owning contiguous view over T values. More...

#include <RADCore.h>

Public Member Functions

 RADSpan ()=default
 Creates an empty span. More...
 
 RADSpan (T *data, size_t size)
 Creates a span over pointer and element count. More...
 
template<typename Container >
 RADSpan (Container &container)
 Creates a span over a std::vector-compatible container. More...
 
T * data () const
 Returns mutable pointer to first element. More...
 
size_t size () const
 Returns element count. More...
 
bool empty () const
 Returns true when the span is empty. More...
 
T & operator[] (size_t index) const
 Returns element at index without bounds checking. More...
 
T * begin () const
 Returns pointer to first element. More...
 
T * end () const
 Returns pointer one past last element. More...
 

Detailed Description

template<typename T>
class RADCore::RADSpan< T >

Non-owning contiguous view over T values.

Constructor & Destructor Documentation

◆ RADSpan() [1/3]

template<typename T >
RADCore::RADSpan< T >::RADSpan ( )
default

Creates an empty span.

◆ RADSpan() [2/3]

template<typename T >
RADCore::RADSpan< T >::RADSpan ( T *  data,
size_t  size 
)
inline

Creates a span over pointer and element count.

◆ RADSpan() [3/3]

template<typename T >
template<typename Container >
RADCore::RADSpan< T >::RADSpan ( Container &  container)
inlineexplicit

Creates a span over a std::vector-compatible container.

Member Function Documentation

◆ begin()

template<typename T >
T* RADCore::RADSpan< T >::begin ( ) const
inline

Returns pointer to first element.

◆ data()

template<typename T >
T* RADCore::RADSpan< T >::data ( ) const
inline

Returns mutable pointer to first element.

◆ empty()

template<typename T >
bool RADCore::RADSpan< T >::empty ( ) const
inline

Returns true when the span is empty.

◆ end()

template<typename T >
T* RADCore::RADSpan< T >::end ( ) const
inline

Returns pointer one past last element.

◆ operator[]()

template<typename T >
T& RADCore::RADSpan< T >::operator[] ( size_t  index) const
inline

Returns element at index without bounds checking.

◆ size()

template<typename T >
size_t RADCore::RADSpan< T >::size ( ) const
inline

Returns element count.


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