MessagePack for C++
meta_decl.hpp
Go to the documentation of this file.
1 //
2 // MessagePack for C++ static resolution routine
3 //
4 // Copyright (C) 2015-2016 KONDO Takatoshi
5 //
6 // Distributed under the Boost Software License, Version 1.0.
7 // (See accompanying file LICENSE_1_0.txt or copy at
8 // http://www.boost.org/LICENSE_1_0.txt)
9 //
10 
11 #ifndef MSGPACK_V1_META_DECL_HPP
12 #define MSGPACK_V1_META_DECL_HPP
13 
14 #if !defined(MSGPACK_USE_CPP03)
15 
16 #include "msgpack/versioning.hpp"
17 #include <type_traits>
18 
19 namespace msgpack {
20 
24 
25 namespace detail {
26 
27 template<bool...> struct bool_pack;
28 
29 template<bool...values> struct all_of_imp;
30 
31 template<bool...values> struct any_of_imp;
32 
33 } // namespace detail
34 
35 template<template <class> class T, class... U>
37 
38 template<template <class> class T, class... U>
39 using any_of = detail::any_of_imp<(T<U>::value)...>;
40 
41 template<std::size_t... Is> struct seq;
42 
43 template<std::size_t N, std::size_t... Is>
44 struct gen_seq;
45 
46 template <typename T>
48 
50 } // MSGPACK_API_VERSION_NAMESPACE(v1)
52 
53 } // namespace msgpack
54 
55 #endif // !defined(MSGPACK_USE_CPP03)
56 
57 #endif // MSGPACK_V1_META_DECL_HPP
Definition: adaptor_base.hpp:15
Definition: meta.hpp:29
Definition: meta.hpp:31
Definition: meta_decl.hpp:27
Definition: meta.hpp:40
Definition: meta_decl.hpp:47
Definition: meta.hpp:37
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition: versioning.hpp:66