// // MessagePack for C++ C++03/C++11 Adaptation // // 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_CPP_CONFIG_DECL_HPP #define MSGPACK_V1_CPP_CONFIG_DECL_HPP #include "rpc/msgpack/versioning.hpp" #if !defined(MSGPACK_USE_CPP03) # if defined(_MSC_VER) # if _MSC_VER < 1900 # define MSGPACK_USE_CPP03 # endif # elif (__cplusplus < 201103L) # define MSGPACK_USE_CPP03 # endif #endif // MSGPACK_USE_CPP03 #if defined(MSGPACK_USE_CPP03) #if defined(nullptr) # if defined (__cplusplus_cli) # define MSGPACK_NULLPTR __nullptr # else // defined (__cplusplus_cli) # define MSGPACK_NULLPTR nullptr # endif // defined (__cplusplus_cli) #else // defined(nullptr) # define MSGPACK_NULLPTR (0) #endif // defined(nullptr) #include namespace clmdep_msgpack { /// @cond MSGPACK_API_VERSION_NAMESPACE(v1) { /// @endcond template struct unique_ptr; template T& move(T& t); template T const& move(T const& t); template struct enable_if; template struct integral_constant; typedef integral_constant true_type; typedef integral_constant false_type; template struct is_same; template struct underlying_type; template struct is_array; template struct remove_const; template struct remove_volatile; template struct remove_cv; template struct is_pointer; /// @cond } // MSGPACK_API_VERSION_NAMESPACE(v1) /// @endcond } // namespace clmdep_msgpack #else // MSGPACK_USE_CPP03 #if defined (__cplusplus_cli) # define MSGPACK_NULLPTR __nullptr #else // defined (__cplusplus_cli) # define MSGPACK_NULLPTR nullptr #endif // defined (__cplusplus_cli) #include #include namespace clmdep_msgpack { /// @cond MSGPACK_API_VERSION_NAMESPACE(v1) { /// @endcond // unique_ptr using std::unique_ptr; // using std::make_unique; // since C++14 using std::hash; // utility using std::move; using std::swap; using std::enable_if; using std::is_same; using std::underlying_type; using std::is_array; using std::remove_const; using std::remove_volatile; using std::remove_cv; using std::is_pointer; /// @cond } // MSGPACK_API_VERSION_NAMESPACE(v1) /// @endcond } // namespace clmdep_msgpack #endif // MSGPACK_USE_CPP03 #endif // MSGPACK_V1_CPP_CONFIG_DECL_HPP