EVOLUTION-MANAGER
Edit File: map_tie.hpp
/*============================================================================= Copyright (c) 2001-2013 Joel de Guzman 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) ==============================================================================*/ #if !defined(FUSION_MAP_TIE_07222005_1247) #define FUSION_MAP_TIE_07222005_1247 #include <boost/fusion/support/config.hpp> #include <boost/fusion/container/map/map.hpp> #if !defined(BOOST_FUSION_HAS_VARIADIC_MAP) # include <boost/fusion/container/generation/detail/pp_map_tie.hpp> #else /////////////////////////////////////////////////////////////////////////////// // C++11 variadic interface /////////////////////////////////////////////////////////////////////////////// #include <boost/fusion/support/pair.hpp> namespace boost { namespace fusion { namespace result_of { template <typename ...Key> struct map_tie { template <typename ...T> struct apply { typedef map<fusion::pair<Key, T&>...> type; }; }; } template <typename ...Key, typename ...T> BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED inline map<fusion::pair<Key, T&>...> map_tie(T&... arg) { typedef map<fusion::pair<Key, T&>...> result_type; return result_type(arg...); } }} #endif #endif