| 
| 
constexpr KAT_HD  | span (const span &) noexcept=default | 
|   | 
| 
template<typename T , std::size_t ArrayExtent, typename  = typename std::enable_if<is_compatible_array<T, ArrayExtent>::value>::type>  | 
| constexpr KAT_HD  | span (T(&arr)[ArrayExtent]) noexcept | 
|   | 
| 
template<typename T , std::size_t ArrayExtent, typename  = typename std::enable_if<is_compatible_array<T, ArrayExtent>::value>::type>  | 
| constexpr KAT_HD  | span (kat::array< T, ArrayExtent > &arr) noexcept | 
|   | 
| 
template<typename T , std::size_t ArrayExtent, typename  = typename std::enable_if<is_compatible_array<const T, ArrayExtent>::value>::type>  | 
| constexpr KAT_HD  | span (const kat::array< T, ArrayExtent > &arr) noexcept | 
|   | 
| 
template<typename T , std::size_t ArrayExtent, typename  = typename std::enable_if<is_compatible_array<T, ArrayExtent>::value>::type>  | 
| constexpr KAT_HOST  | span (std::array< T, ArrayExtent > &arr) noexcept | 
|   | 
| 
template<typename T , std::size_t ArrayExtent, typename  = typename std::enable_if<is_compatible_array<const T, ArrayExtent>::value>::type>  | 
| constexpr KAT_HOST  | span (const std::array< T, ArrayExtent > &arr) noexcept | 
|   | 
| 
constexpr KAT_HD  | span (pointer first, pointer last) noexcept | 
|   | 
| 
constexpr KAT_HD  | span (pointer first, std::size_t count) noexcept | 
|   | 
| 
template<typename OType , std::size_t OExtent>  | 
| constexpr KAT_HD  | span (const span< OType, OExtent > &s) noexcept | 
|   | 
| 
constexpr KAT_HD span &  | operator= (const span &) noexcept=default | 
|   | 
| 
constexpr KAT_HD size_type  | size () const noexcept | 
|   | 
| 
constexpr KAT_HD size_type  | size_bytes () const noexcept | 
|   | 
| 
constexpr KAT_HD bool  | empty () const noexcept | 
|   | 
| 
constexpr KAT_HD reference  | front () const noexcept | 
|   | 
| 
constexpr KAT_HD reference  | back () const noexcept | 
|   | 
| 
constexpr KAT_HD reference  | operator[] (size_type idx) const noexcept | 
|   | 
| 
constexpr KAT_HD pointer  | data () const noexcept | 
|   | 
| 
constexpr KAT_HD iterator  | begin () const noexcept | 
|   | 
| 
constexpr KAT_HD const_iterator  | cbegin () const noexcept | 
|   | 
| 
constexpr KAT_HD iterator  | end () const noexcept | 
|   | 
| 
constexpr KAT_HD const_iterator  | cend () const noexcept | 
|   | 
| 
constexpr KAT_HD reverse_iterator  | rbegin () const noexcept | 
|   | 
| 
constexpr KAT_HD const_reverse_iterator  | crbegin () const noexcept | 
|   | 
| 
constexpr KAT_HD reverse_iterator  | rend () const noexcept | 
|   | 
| 
constexpr KAT_HD const_reverse_iterator  | crend () const noexcept | 
|   | 
| 
template<std::size_t Count>  | 
| constexpr KAT_HD span< element_type, Count >  | first () const noexcept | 
|   | 
| 
constexpr KAT_HD span< element_type, dynamic_extent >  | first (size_type count) const noexcept | 
|   | 
| 
template<std::size_t Count>  | 
| constexpr KAT_HD span< element_type, Count >  | last () const noexcept | 
|   | 
| 
constexpr KAT_HD span< element_type, dynamic_extent >  | last (size_type count) const noexcept | 
|   | 
| 
template<std::size_t Offset, std::size_t Count = dynamic_extent>  | 
| constexpr KAT_HD auto  | subspan () const noexcept -> span< element_type, S_subspan_extent< Offset, Count >()> | 
|   | 
| 
template<std::size_t Offset>  | 
| constexpr KAT_HD auto  | subspan () const noexcept -> span< element_type, S_subspan_extent< Offset, dynamic_extent >()> | 
|   | 
| 
constexpr KAT_HD span< element_type, dynamic_extent >  | subspan (size_type offset, size_type count=dynamic_extent) const noexcept | 
|   |