#include <atlas/mdspan.h>
          template<class ElementType, size_t Base>
          index_accessor struct
        
        
Public types
- using element_type = ElementType
- 
              using reference = std::conditional_t<Base==0, ElementType&, std:: conditional_t<std:: is_const_v<ElementType>, ElementType, index_ reference<ElementType, Base>>> 
- using data_handle_type = ElementType*
- 
              using offset_policy = index_accessor 
Public static variables
- static ElementType base_ constexpr
Constructors, destructors, conversion operators
- index_accessor() defaulted constexpr
- 
              template<class OtherAccessor, typename = typename std::index_accessor(const OtherAccessor&) constexprenable_if_t< (!std:: is_const_v<ElementType>&& std:: is_same_v<ElementType, std:: remove_const_t<typename OtherAccessor::element_type>>) ||( std:: is_const_v<ElementType>&& std:: is_same_v<ElementType, std:: add_const_t<typename OtherAccessor::element_type>>)>> 
- operator default_accessor<element_type>() const constexpr noexcept
Public functions
- 
              template<size_t B = Base, typename = std::auto access(data_handle_type p, size_t i) const -> ElementType& constexpr noexceptenable_if_t<B == 0>> 
- 
              template<size_t B = Base, typename = std::auto access(data_handle_type p, size_t i) const -> index_enable_if_t<B != 0&& !std:: is_const_v<ElementType>>> reference<ElementType, Base> constexpr noexcept 
- 
              template<size_t B = Base, typename = std::auto access(data_handle_type p, size_t i) const -> ElementType constexpr noexceptenable_if_t<B != 0&& std:: is_const_v<ElementType>>> 
- auto offset(data_handle_type p, size_t i) const -> data_handle_type constexpr noexcept