Tatooine
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tatooine::dynamic_multidim_array< ValueType, IndexOrder > Class Template Reference

#include <dynamic_multidim_array.h>

Inheritance diagram for tatooine::dynamic_multidim_array< ValueType, IndexOrder >:
[legend]
Collaboration diagram for tatooine::dynamic_multidim_array< ValueType, IndexOrder >:
[legend]

Public Types

using value_type = ValueType
 
using index_order = IndexOrder
 
using this_type = dynamic_multidim_array< value_type, index_order >
 
using parent_type = dynamic_multidim_size< index_order >
 
using container_type = std::vector< value_type >
 
- Public Types inherited from tatooine::dynamic_multidim_size< IndexOrder >
using this_type = dynamic_multidim_size< IndexOrder >
 
using index_order_type = IndexOrder
 

Public Member Functions

 dynamic_multidim_array ()=default
 
 dynamic_multidim_array (dynamic_multidim_array const &other)=default
 
 dynamic_multidim_array (dynamic_multidim_array &&other) noexcept=default
 
auto operator= (dynamic_multidim_array const &other) -> dynamic_multidim_array &=default
 
auto operator= (dynamic_multidim_array &&other) noexcept -> dynamic_multidim_array &=default
 
 ~dynamic_multidim_array ()=default
 
template<typename OtherT , typename OtherIndexing >
constexpr dynamic_multidim_array (dynamic_multidim_array< OtherT, OtherIndexing > const &other)
 
template<typename OtherT , typename OtherIndexing >
auto operator= (dynamic_multidim_array< OtherT, OtherIndexing > const &other) -> dynamic_multidim_array &
 
 dynamic_multidim_array (integral auto const ... size)
 
template<typename S >
 dynamic_multidim_array (tag::fill< S > const &f, integral auto const ... size)
 
 dynamic_multidim_array (tag::zeros_t const &, integral auto const ... size)
 
 dynamic_multidim_array (tag::ones_t const &, integral auto const ... size)
 
 dynamic_multidim_array (std::vector< value_type > const &data, integral auto const ... size)
 
 dynamic_multidim_array (std::vector< value_type > &&data, integral auto const ... size)
 
template<integral_range Size>
 dynamic_multidim_array (Size &&size)
 
template<typename S , integral_range Size>
 dynamic_multidim_array (tag::fill< S > const &f, Size &&size)
 
template<integral_range Size>
 dynamic_multidim_array (tag::zeros_t const &, Size &&size)
 
template<integral_range Size>
 dynamic_multidim_array (tag::ones_t const &, Size &&size)
 
template<integral_range Size>
 dynamic_multidim_array (std::vector< value_type > const &data, Size &&size)
 
template<range_of< value_type > Data, integral_range Size>
requires (!integral<value_type>)
 dynamic_multidim_array (Data &&data, Size &&size)
 
template<integral_range Size, random_number_generator Rand>
requires arithmetic<value_type>
 dynamic_multidim_array (Rand &&rand, Size &&size)
 
template<random_number_generator Rand>
requires arithmetic<value_type>
 dynamic_multidim_array (Rand &&rand, integral auto const ... size)
 
template<integral... Int>
auto at (Int const ... is) -> auto &
 
template<integral... Int>
auto at (Int const ... is) const -> auto const &
 
auto at (integral_range auto const &indices) -> auto &
 
auto at (integral_range auto const &indices) const -> auto const &
 
auto operator() (integral_range auto const &indices) -> auto &
 
auto operator() (integral_range auto const &indices) const -> auto const &
 
template<integral... Int>
auto operator() (Int const ... is) -> auto &
 
template<integral... Int>
auto operator() (Int const ... is) const -> auto const &
 
auto operator[] (std::size_t i) const -> auto const &
 
auto operator[] (std::size_t i) -> auto &
 
auto resize (integral auto const ... size) -> void
 
auto resize (integral_range auto const &res, value_type const value=value_type{}) -> void
 
constexpr auto internal_container () -> auto &
 
constexpr auto internal_container () const -> auto const &
 
constexpr auto data (std::size_t const i) -> auto &
 
constexpr auto data (std::size_t const i) const -> auto const &
 
constexpr auto data ()
 
constexpr auto data () const
 
template<typename F >
void unary_operation (F &&f)
 
template<typename F , typename OtherT , typename OtherIndexing >
constexpr void binary_operation (F &&f, dynamic_multidim_array< OtherT, OtherIndexing > const &other)
 
auto constexpr in_range (integral auto const ... indices) const
 
auto constexpr in_range (integral_range auto const &indices) const
 
auto indices () const
 
auto num_components () const
 
auto num_dimensions () const
 
auto constexpr plain_index (integral auto const ... indices) const
 
auto constexpr plain_index (integral_range auto const &indices) const
 
auto size () const -> auto const &
 
auto size (std::size_t const i) const
 
- Public Member Functions inherited from tatooine::dynamic_multidim_size< IndexOrder >
 dynamic_multidim_size ()=default
 
 dynamic_multidim_size (dynamic_multidim_size const &other)=default
 
 dynamic_multidim_size (dynamic_multidim_size &&other) noexcept=default
 
auto operator= (dynamic_multidim_size const &other) -> dynamic_multidim_size &=default
 
auto operator= (dynamic_multidim_size &&other) noexcept -> dynamic_multidim_size &=default
 
 ~dynamic_multidim_size ()=default
 
template<typename OtherIndexing >
 dynamic_multidim_size (dynamic_multidim_size< OtherIndexing > const &other)
 
template<typename OtherIndexing >
 dynamic_multidim_size (dynamic_multidim_size< OtherIndexing > &&other)
 
template<typename OtherIndexing >
auto operator= (dynamic_multidim_size< OtherIndexing > const &other) -> dynamic_multidim_size &
 
template<typename OtherIndexing >
auto operator= (dynamic_multidim_size< OtherIndexing > &&other) -> dynamic_multidim_size &
 
 dynamic_multidim_size (integral auto const ... size)
 
 dynamic_multidim_size (std::vector< std::size_t > &&size)
 
 dynamic_multidim_size (integral_range auto const &size)
 
template<typename OtherIndexing >
auto operator== (dynamic_multidim_size< OtherIndexing > const &other) const
 
template<typename OtherIndexing >
auto operator!= (dynamic_multidim_size< OtherIndexing > const &other) const
 
auto num_dimensions () const
 
auto size () const -> auto const &
 
auto size (std::size_t const i) const
 
auto num_components () const
 
auto resize (integral auto const ... size) -> void
 
auto resize (integral_range auto const &size) -> void
 
auto resize (std::vector< std::size_t > &&size) -> void
 
auto resize (std::vector< std::size_t > const &size) -> void
 
auto constexpr in_range (integral auto const ... indices) const
 
auto constexpr in_range (integral_range auto const &indices) const
 
auto constexpr plain_index (integral auto const ... indices) const
 
auto constexpr plain_index (integral_range auto const &indices) const
 
auto constexpr multi_index (std::size_t const gi) const
 
auto begin_indices () const
 
auto end_indices () const
 
auto indices () const
 

Static Public Member Functions

static auto zeros (integral auto const ... size)
 
template<integral_range Size>
static auto zeros (Size &&size)
 
static auto ones (integral auto const ... size)
 
template<integral_range Size>
static auto ones (Size &&size)
 
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto randu (value_type const min, value_type const max, Size &&size, RandEng &&eng=RandEng{std::random_device{}()})
 
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto randu (Size &&size, value_type const min=0, value_type const max=1, RandEng &&eng=RandEng{std::random_device{}()})
 
template<typename RandEng = std::mt19937_64>
static auto randu (integral auto const ... is)
 
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto randn (value_type const mean, value_type const stddev, Size &&size, RandEng &&eng=RandEng{std::random_device{}()})
 
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto randn (Size &&size, value_type const mean, value_type const stddev, RandEng &&eng=RandEng{std::random_device{}()})
 
template<typename RandEng = std::mt19937_64>
static auto randn (integral auto const ... is)
 
template<integral_range Size, random_number_generator Rand>
static auto rand (Rand &&rand, Size &&size)
 
template<random_number_generator Rand>
static auto rand (Rand &&rand, integral auto const ... size)
 

Public Attributes

container_type m_data_container
 

Member Typedef Documentation

◆ container_type

template<typename ValueType , typename IndexOrder = x_fastest>
using tatooine::dynamic_multidim_array< ValueType, IndexOrder >::container_type = std::vector<value_type>

◆ index_order

template<typename ValueType , typename IndexOrder = x_fastest>
using tatooine::dynamic_multidim_array< ValueType, IndexOrder >::index_order = IndexOrder

◆ parent_type

template<typename ValueType , typename IndexOrder = x_fastest>
using tatooine::dynamic_multidim_array< ValueType, IndexOrder >::parent_type = dynamic_multidim_size<index_order>

◆ this_type

template<typename ValueType , typename IndexOrder = x_fastest>
using tatooine::dynamic_multidim_array< ValueType, IndexOrder >::this_type = dynamic_multidim_array<value_type, index_order>

◆ value_type

template<typename ValueType , typename IndexOrder = x_fastest>
using tatooine::dynamic_multidim_array< ValueType, IndexOrder >::value_type = ValueType

Constructor & Destructor Documentation

◆ dynamic_multidim_array() [1/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( )
default

◆ dynamic_multidim_array() [2/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( dynamic_multidim_array< ValueType, IndexOrder > const &  other)
default

◆ dynamic_multidim_array() [3/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( dynamic_multidim_array< ValueType, IndexOrder > &&  other)
defaultnoexcept

◆ ~dynamic_multidim_array()

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::~dynamic_multidim_array ( )
default

◆ dynamic_multidim_array() [4/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename OtherT , typename OtherIndexing >
constexpr tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( dynamic_multidim_array< OtherT, OtherIndexing > const &  other)
inlineexplicitconstexpr

◆ dynamic_multidim_array() [5/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( integral auto const ...  size)
inlineexplicit

◆ dynamic_multidim_array() [6/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename S >
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::fill< S > const &  f,
integral auto const ...  size 
)
inlineexplicit

◆ dynamic_multidim_array() [7/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::zeros_t const &  ,
integral auto const ...  size 
)
inlineexplicit

◆ dynamic_multidim_array() [8/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::ones_t const &  ,
integral auto const ...  size 
)
inlineexplicit

◆ dynamic_multidim_array() [9/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( std::vector< value_type > const &  data,
integral auto const ...  size 
)
inlineexplicit

◆ dynamic_multidim_array() [10/18]

template<typename ValueType , typename IndexOrder = x_fastest>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( std::vector< value_type > &&  data,
integral auto const ...  size 
)
inlineexplicit

◆ dynamic_multidim_array() [11/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( Size &&  size)
inlineexplicit

◆ dynamic_multidim_array() [12/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename S , integral_range Size>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::fill< S > const &  f,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [13/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::zeros_t const &  ,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [14/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( tag::ones_t const &  ,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [15/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( std::vector< value_type > const &  data,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [16/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<range_of< value_type > Data, integral_range Size>
requires (!integral<value_type>)
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( Data &&  data,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [17/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, random_number_generator Rand>
requires arithmetic<value_type>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( Rand &&  rand,
Size &&  size 
)
inline

◆ dynamic_multidim_array() [18/18]

template<typename ValueType , typename IndexOrder = x_fastest>
template<random_number_generator Rand>
requires arithmetic<value_type>
tatooine::dynamic_multidim_array< ValueType, IndexOrder >::dynamic_multidim_array ( Rand &&  rand,
integral auto const ...  size 
)
inlineexplicit

Member Function Documentation

◆ at() [1/4]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral... Int>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::at ( Int const ...  is) -> auto&
inline

◆ at() [2/4]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral... Int>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::at ( Int const ...  is) const -> auto const&
inline

◆ at() [3/4]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::at ( integral_range auto const &  indices) -> auto&
inline

◆ at() [4/4]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::at ( integral_range auto const &  indices) const -> auto const&
inline

◆ binary_operation()

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename F , typename OtherT , typename OtherIndexing >
constexpr void tatooine::dynamic_multidim_array< ValueType, IndexOrder >::binary_operation ( F &&  f,
dynamic_multidim_array< OtherT, OtherIndexing > const &  other 
)
inlineconstexpr

◆ data() [1/4]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::data ( )
inlineconstexpr

◆ data() [2/4]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::data ( ) const
inlineconstexpr

◆ data() [3/4]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::data ( std::size_t const  i) -> auto&
inlineconstexpr

◆ data() [4/4]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::data ( std::size_t const  i) const -> auto const&
inlineconstexpr

◆ in_range() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto constexpr tatooine::dynamic_multidim_size< IndexOrder >::in_range ( integral auto const ...  indices) const
inlineconstexpr

◆ in_range() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto constexpr tatooine::dynamic_multidim_size< IndexOrder >::in_range ( integral_range auto const &  indices) const
inlineconstexpr

◆ indices()

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_size< IndexOrder >::indices ( ) const
inline

◆ internal_container() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::internal_container ( ) -> auto&
inlineconstexpr

◆ internal_container() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
constexpr auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::internal_container ( ) const -> auto const&
inlineconstexpr

◆ num_components()

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_size< IndexOrder >::num_components ( ) const
inline

◆ num_dimensions()

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_size< IndexOrder >::num_dimensions ( ) const
inline

◆ ones() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::ones ( integral auto const ...  size)
inlinestatic

◆ ones() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::ones ( Size &&  size)
inlinestatic

◆ operator()() [1/4]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral... Int>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator() ( Int const ...  is) -> auto&
inline

◆ operator()() [2/4]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral... Int>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator() ( Int const ...  is) const -> auto const&
inline

◆ operator()() [3/4]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator() ( integral_range auto const &  indices) -> auto&
inline

◆ operator()() [4/4]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator() ( integral_range auto const &  indices) const -> auto const&
inline

◆ operator=() [1/3]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator= ( dynamic_multidim_array< ValueType, IndexOrder > &&  other) -> dynamic_multidim_array &=default
defaultnoexcept

◆ operator=() [2/3]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator= ( dynamic_multidim_array< ValueType, IndexOrder > const &  other) -> dynamic_multidim_array &=default
default

◆ operator=() [3/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename OtherT , typename OtherIndexing >
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator= ( dynamic_multidim_array< OtherT, OtherIndexing > const &  other) -> dynamic_multidim_array&
inline

◆ operator[]() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator[] ( std::size_t  i) -> auto&
inline

◆ operator[]() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::operator[] ( std::size_t  i) const -> auto const&
inline

◆ plain_index() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto constexpr tatooine::dynamic_multidim_size< IndexOrder >::plain_index ( integral auto const ...  indices) const
inlineconstexpr

◆ plain_index() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto constexpr tatooine::dynamic_multidim_size< IndexOrder >::plain_index ( integral_range auto const &  indices) const
inlineconstexpr

◆ rand() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
template<random_number_generator Rand>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::rand ( Rand &&  rand,
integral auto const ...  size 
)
inlinestatic

◆ rand() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, random_number_generator Rand>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::rand ( Rand &&  rand,
Size &&  size 
)
inlinestatic

◆ randn() [1/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randn ( integral auto const ...  is)
inlinestatic

◆ randn() [2/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randn ( Size &&  size,
value_type const  mean,
value_type const  stddev,
RandEng &&  eng = RandEng{std::random_device{}()} 
)
inlinestatic

◆ randn() [3/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randn ( value_type const  mean,
value_type const  stddev,
Size &&  size,
RandEng &&  eng = RandEng{std::random_device{}()} 
)
inlinestatic

◆ randu() [1/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randu ( integral auto const ...  is)
inlinestatic

◆ randu() [2/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randu ( Size &&  size,
value_type const  min = 0,
value_type const  max = 1,
RandEng &&  eng = RandEng{std::random_device{}()} 
)
inlinestatic

◆ randu() [3/3]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size, typename RandEng = std::mt19937_64>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::randu ( value_type const  min,
value_type const  max,
Size &&  size,
RandEng &&  eng = RandEng{std::random_device{}()} 
)
inlinestatic

◆ resize() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::resize ( integral auto const ...  size) -> void
inline

◆ resize() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::resize ( integral_range auto const &  res,
value_type const  value = value_type{} 
) -> void
inline

◆ size() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_size< IndexOrder >::size ( ) const -> auto const&
inline

◆ size() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
auto tatooine::dynamic_multidim_size< IndexOrder >::size ( std::size_t const  i) const
inline
Returns
size of dimensions i

◆ unary_operation()

template<typename ValueType , typename IndexOrder = x_fastest>
template<typename F >
void tatooine::dynamic_multidim_array< ValueType, IndexOrder >::unary_operation ( F &&  f)
inline

◆ zeros() [1/2]

template<typename ValueType , typename IndexOrder = x_fastest>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::zeros ( integral auto const ...  size)
inlinestatic

◆ zeros() [2/2]

template<typename ValueType , typename IndexOrder = x_fastest>
template<integral_range Size>
static auto tatooine::dynamic_multidim_array< ValueType, IndexOrder >::zeros ( Size &&  size)
inlinestatic

Member Data Documentation

◆ m_data_container

template<typename ValueType , typename IndexOrder = x_fastest>
container_type tatooine::dynamic_multidim_array< ValueType, IndexOrder >::m_data_container

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