DeSiGNAR  0.5a
Data Structures General Library
typetraits.H
Go to the documentation of this file.
1 /*
2  This file is part of Designar.
3  Copyright (C) 2017 by Alejandro J. Mujica
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 
18  Any user request of this software, write to
19 
20  Alejandro Mujica
21 
22  aledrums@gmail.com
23 */
24 
25 # ifndef DSGTYPETRAITS_H
26 # define DSGTYPETRAITS_H
27 
28 # include <type_traits>
29 
30 namespace Designar
31 {
32 
33  template <typename To, typename FromHead, typename ...FromTail>
35  {
36  static constexpr bool value =
38  AllAreConvertible<To, FromTail...>::value;
39  };
40 
41  template <typename To, typename From>
42  struct AllAreConvertible<To, From>
43  {
45  };
46 
47 } // end namespace Designar
48 
49 # endif // DSGTYPETRAITS_H
static constexpr bool value
Definition: typetraits.H:36
Definition: array.H:32
Value & value(MapKey< Key, Value > &item)
Definition: map.H:77
Definition: typetraits.H:34