MessagePack for C++
array_ref_decl.hpp
Go to the documentation of this file.
1 //
2 // MessagePack for C++ static resolution routine
3 //
4 // Copyright (C) 2008-2016 FURUHASHI Sadayuki and 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 #ifndef MSGPACK_V1_TYPE_ARRAY_REF_DECL_HPP
11 #define MSGPACK_V1_TYPE_ARRAY_REF_DECL_HPP
12 
13 #include "msgpack/versioning.hpp"
15 #include "msgpack/object.hpp"
16 
17 namespace msgpack {
18 
22 
23 namespace type {
24 
25 template <typename T>
26 struct array_ref;
27 
28 template <typename T>
29 typename msgpack::enable_if<
30  !msgpack::is_array<T const>::value,
31  array_ref<T const>
32 >::type
33 make_array_ref(T const& t);
34 
35 template <typename T>
36 typename msgpack::enable_if<
37  !msgpack::is_array<T>::value,
38  array_ref<T>
39 >::type
40 make_array_ref(T& t);
41 
42 template <typename T, std::size_t N>
43 array_ref<const T[N]> make_array_ref(const T(&t)[N]);
44 
45 template <typename T, std::size_t N>
46 array_ref<T[N]> make_array_ref(T(&t)[N]);
47 
48 } // namespace type
49 
51 } // MSGPACK_API_VERSION_NAMESPACE(v1)
53 
54 } // namespace msgpack
55 
56 #endif // MSGPACK_V1_TYPE_ARRAY_REF_DECL_HPP
msgpack::enable_if< !msgpack::is_array< T const >::value, array_ref< T const >>::type make_array_ref(const T &t)
Definition: array_ref.hpp:126
Definition: adaptor_base.hpp:15
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition: versioning.hpp:66