capydi
Loading...
Searching...
No Matches
PopHead.hpp
Go to the documentation of this file.
1
#ifndef CAPYDI_POP_HEAD_HPP_
2
#define CAPYDI_POP_HEAD_HPP_
3
4
#include "
capymeta/primitives/Pack.hpp
"
5
6
namespace
capy::meta
7
{
8
9
template
<
typename
Pack_>
10
struct
PackPopHead
11
{
12
using
type
= Pack_;
13
};
14
15
template
<
typename
Head,
typename
... Tail>
16
struct
PackPopHead
<
17
Pack
<Head, Tail...>
18
>
19
{
20
using
type
=
Pack
<Tail...>;
21
};
22
23
template
<
typename
Pack_>
24
using
pack_pop_head_t
=
typename
PackPopHead<Pack_>::type
;
25
26
}
27
28
#endif
// !CAPYDI_POP_HEAD_HPP_
Pack.hpp
Compile-time type pack utilities and metaprogramming foundations.
capy::meta
Definition
Rebind.hpp:7
capy::meta::pack_pop_head_t
typename PackPopHead< Pack_ >::type pack_pop_head_t
Definition
PopHead.hpp:24
capy::meta::PackPopHead< Pack< Head, Tail... > >::type
Pack< Tail... > type
Definition
PopHead.hpp:20
capy::meta::PackPopHead
Definition
PopHead.hpp:11
capy::meta::PackPopHead::type
Pack_ type
Definition
PopHead.hpp:12
capy::meta::Pack
A compile-time heterogeneous type list.
Definition
Pack.hpp:70
core
capymeta
include
capymeta
algorithms
pack
PopHead.hpp
Generated by
1.15.0