You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
602 B
C++
28 lines
602 B
C++
// -*- c++ -*-
|
|
#pragma once
|
|
|
|
#include_next <utility>
|
|
|
|
namespace std
|
|
{
|
|
|
|
template <typename T, T... Vals>
|
|
struct integer_sequence {};
|
|
|
|
template <size_t... Vals>
|
|
using index_sequence = integer_sequence<size_t, Vals...>;
|
|
|
|
|
|
// use clang builtin:
|
|
// http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20151102/142408.html
|
|
template <typename T, T N>
|
|
using make_integer_sequence = __make_integer_seq<integer_sequence, T, N>;
|
|
|
|
template <size_t N>
|
|
using make_index_sequence = make_integer_sequence<size_t, N>;
|
|
|
|
template <typename... Args>
|
|
using index_sequence_for = make_index_sequence<sizeof...(Args)>;
|
|
|
|
}
|