4#ifndef INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_TYPE_LIST_TAKE_HPP_
5#define INCLUDE_GUARD_ARENE_BASE_ARENE_BASE_TYPE_LIST_TAKE_HPP_
7#include "arene/base/constraints/constraints.hpp"
8#include "arene/base/stdlib_choice/cstddef.hpp"
9#include "arene/base/stdlib_choice/declval.hpp"
10#include "arene/base/stdlib_choice/enable_if.hpp"
11#include "arene/base/stdlib_choice/integer_sequence.hpp"
12#include "arene/base/type_list/at.hpp"
18namespace take_detail {
27template <std::size_t... Is,
template <
class...>
class List,
class... Ts>
28auto take_impl(std::index_sequence<Is...>, List<Ts...>) -> List<at_t<List<Ts...>, Is>...>;
36template <
class List, std::size_t Count,
class = constraints<>>
45template <
template <
class...>
class List,
class... Ts, std::size_t Count>
46class take<List<Ts...>, Count, constraints<std::enable_if_t<(Count <
sizeof...(Ts))>>> {
49 using type =
decltype(take_impl(std::make_index_sequence<Count>{}, std::declval<List<Ts...>>()));
58template <
template <
class...>
class List,
class... Ts, std::size_t Count>
59class take<List<Ts...>, Count, constraints<std::enable_if_t<(Count >=
sizeof...(Ts))>>> {
62 using type = List<Ts...>;
Definition apply_all.hpp:14
Definition array_exceptions_disabled.cpp:11
Copyright 2026, Toyota Motor Corporation.
Definition array_exceptions_disabled.cpp:10