SeqAn3  3.0.3
The Modern C++ library for sequence analysis.
type_list.hpp
Go to the documentation of this file.
1 // -----------------------------------------------------------------------------------------------------
2 // Copyright (c) 2006-2021, Knut Reinert & Freie Universität Berlin
3 // Copyright (c) 2016-2021, Knut Reinert & MPI für molekulare Genetik
4 // This file may be used, modified and/or redistributed under the terms of the 3-clause BSD-License
5 // shipped with this file and also available at: https://github.com/seqan/seqan3/blob/master/LICENSE.md
6 // -----------------------------------------------------------------------------------------------------
7 
13 #pragma once
14 
16 
17 namespace seqan3
18 {
19 
20 // ----------------------------------------------------------------------------
21 // type_list class
22 // ----------------------------------------------------------------------------
23 
27 template <typename ...types>
28 struct type_list
29 {
31  using type = type_list;
32 
34  static constexpr size_t size() noexcept
35  {
36  return sizeof...(types);
37  }
38 };
39 
40 } // namespace seqan3
Provides type traits for working with templates.
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:29
Type that contains multiple types.
Definition: type_list.hpp:29
static constexpr size_t size() noexcept
The number of types contained in the type list.
Definition: type_list.hpp:34