⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 make_variant_list.hpp

📁 CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most i
💻 HPP
字号:
//-----------------------------------------------------------------------------// boost variant/detail/make_variant_list.hpp header file// See http://www.boost.org for updates, documentation, and revision history.//-----------------------------------------------------------------------------//// Copyright (c) 2002-2003// Eric Friedman, Itay Maman//// 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 BOOST_VARIANT_DETAIL_MAKE_VARIANT_LIST_HPP#define BOOST_VARIANT_DETAIL_MAKE_VARIANT_LIST_HPP#include "boost/variant/variant_fwd.hpp"#include "boost/mpl/list.hpp"#include "boost/preprocessor/cat.hpp"#include "boost/preprocessor/enum.hpp"namespace boost {namespace detail { namespace variant {///////////////////////////////////////////////////////////////////////////////// (detail) metafunction make_variant_list//// Provides a MPL-compatible sequence with the specified non-void types// as arguments.//// Rationale: see class template convert_void (variant_fwd.hpp) and using-// declaration workaround (below).//template < BOOST_VARIANT_ENUM_PARAMS(typename T) >struct make_variant_list{public: // metafunction result    // [Define a macro to convert any void(NN) tags to mpl::void...]#   define BOOST_VARIANT_AUX_CONVERT_VOID(z, N,_)  \        typename convert_void< BOOST_PP_CAT(T,N) >::type    // [...so that the specified types can be passed to mpl::list...]    typedef typename mpl::list<           BOOST_PP_ENUM(              BOOST_VARIANT_LIMIT_TYPES            , BOOST_VARIANT_AUX_CONVERT_VOID            , _            )        >::type type;    // [...and, finally, the conversion macro can be undefined:]#   undef BOOST_VARIANT_AUX_CONVERT_VOID};}} // namespace detail::variant} // namespace boost#endif // BOOST_VARIANT_DETAIL_MAKE_VARIANT_LIST_HPP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -