1#ifndef TATOOINE_DETAIL_RECTILINEAR_GRID_CREATOR_H
2#define TATOOINE_DETAIL_RECTILINEAR_GRID_CREATOR_H
8template <floating_point_range... Dimensions>
9requires(
sizeof...(Dimensions) > 1)
10class rectilinear_grid;
16template <dimension IndexableSpace, std::
size_t N>
19 template <
typename... Args, std::size_t... Seq>
20 static constexpr auto create(std::index_sequence<Seq...> ,
23 IndexableSpace{}))...>{
24 std::forward<Args>(args)...};
26 template <
typename... Args>
27 static constexpr auto create(Args&&... args) {
28 return create(std::make_index_sequence<N>{}, std::forward<Args>(args)...);
32 using type =
decltype(create());
35template <dimension IndexableSpace, std::
size_t N>
Definition: rectilinear_grid.h:38
Definition: vtp_writer.h:3
typename detail::rectilinear_grid::creator< IndexableSpace, N >::type creator_t
Definition: creator.h:37
Definition: algorithm.h:6
static constexpr auto create(std::index_sequence< Seq... >, Args &&... args)
Definition: creator.h:20
static constexpr auto create(Args &&... args)
Definition: creator.h:27
decltype(create()) type
Definition: creator.h:32