OpenKalman
Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
OpenKalman::interface::layout_diagonal_of< NestedLayout, NestedExtents >::mapping< Extents > Struct Template Reference

Public Types

using extents_type = Extents
 
using index_type = typename extents_type::index_type
 
using size_type = typename extents_type::size_type
 
using rank_type = typename extents_type::rank_type
 
using layout_type = layout_diagonal_of
 

Public Member Functions

constexpr mapping (const nested_mapping_type &map, const extents_type &e)
 
constexpr const extents_type & extents () const noexcept
 
template<bool Enable = true, std::enable_if_t< Enable and(extents_type::rank()==0), int > = 0>
constexpr index_type operator() () const
 
template<typename IndexType0 , typename... IndexTypes, std::enable_if_t< std::is_convertible_v< IndexType0, index_type > and(... and std::is_convertible_v< IndexTypes, index_type >) and(1+sizeof...(IndexTypes)==extents_type::rank()), int > = 0>
constexpr index_type operator() (IndexType0 i0, IndexTypes...is) const
 
constexpr index_type required_span_size () const noexcept
 
constexpr bool is_unique () const
 
constexpr bool is_exhaustive () const
 
constexpr bool is_strided () const
 
constexpr index_type stride (std::size_t r) const
 

Static Public Member Functions

static constexpr bool is_always_unique () noexcept
 
static constexpr bool is_always_exhaustive () noexcept
 
static constexpr bool is_always_strided () noexcept
 

Friends

template<class OtherExtents >
constexpr bool operator== (const mapping &lhs, const mapping< OtherExtents > &rhs) noexcept
 

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