dune-assembler 2.12
Loading...
Searching...
No Matches
Dune::Assembler::FlatArray< T, R, C > Class Template Reference

#include <dune/assembler/backends/flatarray.hh>

Inheritance diagram for Dune::Assembler::FlatArray< T, R, C >:
Inheritance graph

Public Types

using index_type = typename Base::index_type
 
using value_type = typename Base::value_type
 
using extents_type = typename Base::extents_type
 
typedef Element element_type
 
typedef LayoutPolicy layout_type
 
typedef Container container_type
 
typedef typename layout_type::template mapping< extents_type > mapping_type
 
typedef typename extents_type::size_type size_type
 
typedef typename extents_type::rank_type rank_type
 
typedef mdspan< element_type, extents_type, layout_type > mdspan_type
 
typedef mdspan< const element_type, extents_type, layout_type > const_mdspan_type
 
typedef decltype(std::to_address(std::declval< container_type >().begin())) pointer
 
typedef typename container_type::reference reference
 
typedef decltype(std::to_address(std::declval< container_type >().cbegin())) const_pointer
 
typedef typename container_type::const_reference const_reference
 

Public Member Functions

constexpr FlatArray (const value_type &value)
 
constexpr FlatArray & operator= (const value_type &value)
 
constexpr BracketProxy< const FlatArray > operator[] (index_type i) const
 
constexpr BracketProxy< FlatArray > operator[] (index_type i)
 
constexpr const mapping_type & mapping () const noexcept
 
constexpr const container_type & container () const noexcept
 
constexpr container_type && extract_container () &&noexcept
 
constexpr bool is_unique () const noexcept
 
constexpr bool is_exhaustive () const noexcept
 
constexpr bool is_strided () const noexcept
 
constexpr const extents_type & extents () const noexcept
 
constexpr operator mdspan< V, E, L, A > ()
 
constexpr operator mdspan< V, E, L, A > () const
 
constexpr mdspan< element_type, extents_type, layout_type, AccessorPolicy > to_mdspan (const AccessorPolicy &a=AccessorPolicy{})
 
constexpr mdspan< const element_type, extents_type, layout_type, AccessorPolicy > to_mdspan (const AccessorPolicy &a=AccessorPolicy{}) const
 
constexpr reference operator() (Indices... indices)
 
constexpr const_reference operator() (Indices... indices) const
 
constexpr reference operator[] (Index index)
 
constexpr const_reference operator[] (Index index) const
 
constexpr reference operator[] (std::span< Index, extents_type::rank()> indices)
 
constexpr const_reference operator[] (std::span< Index, extents_type::rank()> indices) const
 
constexpr reference operator[] (const std::array< Index, extents_type::rank()> &indices)
 
constexpr const_reference operator[] (const std::array< Index, extents_type::rank()> &indices) const
 
constexpr reference at (Indices... indices)
 
constexpr const_reference at (Indices... indices) const
 
constexpr reference at (std::span< Index, extents_type::rank()> indices)
 
constexpr const_reference at (std::span< Index, extents_type::rank()> indices) const
 
constexpr reference at (const std::array< Index, extents_type::rank()> &indices)
 
constexpr const_reference at (const std::array< Index, extents_type::rank()> &indices) const
 
constexpr index_type extent (rank_type r) const noexcept
 
constexpr size_type size () const noexcept
 
constexpr std::size_t container_size () const
 
constexpr bool empty () const noexcept
 
constexpr index_type stride (rank_type r) const
 
constexpr pointer container_data () noexcept
 
constexpr const_pointer container_data () const noexcept
 

Static Public Member Functions

static constexpr index_type rows () noexcept
 
static constexpr index_type cols () noexcept
 
static constexpr bool is_always_unique () noexcept
 
static constexpr bool is_always_exhaustive () noexcept
 
static constexpr bool is_always_strided () noexcept
 
static constexpr rank_type rank () noexcept
 
static constexpr rank_type rank_dynamic () noexcept
 
static constexpr std::size_t static_extent (rank_type r) noexcept
 

Protected Attributes

container_type container_
 
DUNE_NO_UNIQUE_ADDRESS mapping_type mapping_
 

Member Typedef Documentation

◆ extents_type

◆ index_type

◆ value_type

Constructor & Destructor Documentation

◆ FlatArray()

template<class T , std::size_t R, std::size_t C>
constexpr Dune::Assembler::FlatArray< T, R, C >::FlatArray ( const value_type &  value)
inlineexplicitconstexpr

Member Function Documentation

◆ cols()

template<class T , std::size_t R, std::size_t C>
static constexpr index_type Dune::Assembler::FlatArray< T, R, C >::cols ( )
inlinestaticconstexprnoexcept

◆ operator=()

template<class T , std::size_t R, std::size_t C>
constexpr FlatArray & Dune::Assembler::FlatArray< T, R, C >::operator= ( const value_type &  value)
inlineconstexpr

◆ operator[]() [1/2]

template<class T , std::size_t R, std::size_t C>
constexpr BracketProxy< FlatArray > Dune::Assembler::FlatArray< T, R, C >::operator[] ( index_type  i)
inlineconstexpr

◆ operator[]() [2/2]

template<class T , std::size_t R, std::size_t C>
constexpr BracketProxy< const FlatArray > Dune::Assembler::FlatArray< T, R, C >::operator[] ( index_type  i) const
inlineconstexpr

◆ rows()

template<class T , std::size_t R, std::size_t C>
static constexpr index_type Dune::Assembler::FlatArray< T, R, C >::rows ( )
inlinestaticconstexprnoexcept

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