diff options
Diffstat (limited to 'third_party/msgpack/include/msgpack/v1/adaptor/size_equal_only_decl.hpp')
-rw-r--r-- | third_party/msgpack/include/msgpack/v1/adaptor/size_equal_only_decl.hpp | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/third_party/msgpack/include/msgpack/v1/adaptor/size_equal_only_decl.hpp b/third_party/msgpack/include/msgpack/v1/adaptor/size_equal_only_decl.hpp new file mode 100644 index 0000000000..6eac047b03 --- /dev/null +++ b/third_party/msgpack/include/msgpack/v1/adaptor/size_equal_only_decl.hpp @@ -0,0 +1,52 @@ +// +// MessagePack for C++ static resolution routine +// +// Copyright (C) 2016 KONDO Takatoshi +// +// Distributed under the Boost Software License, Version 1.0. +// (See accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) +// +#ifndef MSGPACK_V1_TYPE_SIZE_EQUAL_ONLY_DECL_HPP +#define MSGPACK_V1_TYPE_SIZE_EQUAL_ONLY_DECL_HPP + +#include "msgpack/versioning.hpp" +#include "msgpack/adaptor/adaptor_base.hpp" +#include "msgpack/adaptor/msgpack_tuple.hpp" + +namespace msgpack { + +/// @cond +MSGPACK_API_VERSION_NAMESPACE(v1) { +/// @endcond + +namespace type { + +template <typename T> +struct size_equal_only; + +template <typename T> +size_equal_only<T> make_size_equal_only(T& t); + +template <typename T> +std::size_t size(T const& t); + +template <typename T, std::size_t N> +std::size_t size(const T(&)[N]); + +#if !defined(MSGPACK_USE_CPP03) + +template <typename... T> +std::size_t size(std::tuple<T...> const&); + +#endif // !defined(MSGPACK_USE_CPP03) + +} // namespace type + +/// @cond +} // MSGPACK_API_VERSION_NAMESPACE(v1) +/// @endcond + +} // namespace msgpack + +#endif // MSGPACK_V1_TYPE_SIZE_EQUAL_ONLY_DECL_HPP |