24using uncvref_t =
typename std::remove_cv<typename std::remove_reference<T>::type>
::type;
29using std::enable_if_t;
30using std::index_sequence;
31using std::make_index_sequence;
32using std::index_sequence_for;
37template<
bool B,
typename T =
void>
64template <
typename T, T... Ints>
68 static constexpr std::size_t
size() noexcept
70 return sizeof...(Ints);
79template <
size_t... Ints>
82namespace utility_internal
85template <
typename Seq,
size_t SeqSize,
size_t Rem>
89template <
typename T, T... Ints,
size_t SeqSize>
95template <
typename T, T... Ints,
size_t SeqSize>
103template <
typename T,
size_t N>
125template <
typename T, T N>
141template <
typename... Ts>
159#ifndef JSON_HAS_CPP_17
164template<
typename T,
typename... Args>
165inline constexpr std::array<T,
sizeof...(Args)>
make_array(Args&& ... args)
167 return std::array<T,
sizeof...(Args)> {{
static_cast<T
>(std::forward<Args>(args))...}};
#define WPI_JSON_NAMESPACE_END
Definition abi_macros.h:59
#define WPI_JSON_NAMESPACE_BEGIN
Definition abi_macros.h:53
#define JSON_INLINE_VARIABLE
Definition macro_scope.h:147
detail namespace with internal helper functions
Definition input_adapters.h:32
integer_sequence< size_t, N... > index_sequence
Definition ranges.h:140
constexpr std::array< T, sizeof...(Args)> make_array(Args &&... args)
Definition cpp_future.h:165
typename std::enable_if< B, T >::type enable_if_t
Definition cpp_future.h:38
typename std::remove_cv< typename std::remove_reference< T >::type >::type uncvref_t
Definition cpp_future.h:24
type
Definition base.h:937
Definition cpp_future.h:66
T value_type
Definition ranges.h:135
static constexpr std::size_t size() noexcept
Definition cpp_future.h:68
Definition cpp_future.h:149
Definition cpp_future.h:155
static JSON_INLINE_VARIABLE constexpr T value
Definition cpp_future.h:156
Definition cpp_future.h:86
Definition cpp_future.h:105
typename Extend< typename Gen< T, N/2 >::type, N/2, N % 2 >::type type
Definition cpp_future.h:106