25template <
typename T,
size_t N>
26class array :
public std::array<T, N> {
30 template <std::convertible_to<T>... Ts>
31 requires(1 +
sizeof...(Ts) == N)
33 : std::array<T, N>{std::forward<T>(
arg), std::forward<Ts>(args)...} {}
40 constexpr array(
const std::array<T, N>& rhs) {
41 *
static_cast<std::array<T, N>*
>(
this) = rhs;
45 *
static_cast<std::array<T, N>*
>(
this) = rhs;
49 constexpr array(std::array<T, N>&& rhs) {
50 *
static_cast<std::array<T, N>*
>(
this) = rhs;
54 *
static_cast<std::array<T, N>*
>(
this) = rhs;
59template <
typename T, std::convertible_to<T>... Ts>
64template <
size_t I,
typename T,
size_t N>
67 return std::get<I>(
static_cast<std::array<T, N>
>(arr));
70template <
size_t I,
typename T,
size_t N>
73 return std::move(std::get<I>(arr));
76template <
size_t I,
typename T,
size_t N>
79 return std::get<I>(
static_cast<std::array<T, N>
>(arr));
82template <
size_t I,
typename T,
size_t N>
85 return std::move(std::get<I>(arr));
91template <
typename T,
size_t N>
92struct tuple_size<
wpi::util::array<T, N>>
93 :
public integral_constant<size_t, N> {};
96template <
size_t I,
typename T,
size_t N>
constexpr T & get(wpi::util::array< T, N > &arr) noexcept
Definition array.hpp:66
auto arg(const Char *name, const T &arg) -> detail::named_arg< Char, T >
Returns a named argument to be used in a formatting function.
Definition base.h:2846
This class is a wrapper around std::array that does compile time size checking.
Definition array.hpp:26
constexpr array(const std::array< T, N > &rhs)
Definition array.hpp:40
constexpr array & operator=(std::array< T, N > &&rhs)
Definition array.hpp:53
constexpr array & operator=(const array< T, N > &)=default
constexpr array & operator=(array< T, N > &&)=default
constexpr array(const array< T, N > &)=default
constexpr array(std::array< T, N > &&rhs)
Definition array.hpp:49
constexpr array(empty_array_t)
Definition array.hpp:28
constexpr array & operator=(const std::array< T, N > &rhs)
Definition array.hpp:44
constexpr array(array< T, N > &&)=default
constexpr array(T arg, Ts &&... args)
Definition array.hpp:32
Definition StringMap.hpp:773
Definition raw_os_ostream.hpp:19
constexpr empty_array_t empty_array
Definition array.hpp:16
array(T, Ts...) -> array< T, 1+sizeof...(Ts)>
Definition CvSource.hpp:15
T type
Definition array.hpp:99