set.hpp

来自「Boost provides free peer-reviewed portab」· HPP 代码 · 共 68 行

HPP
68
字号
// Copyright Daniel Wallin 2006. Use, modification and distribution is// subject to 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_PARAMETER_SET_060912_HPP# define BOOST_PARAMETER_SET_060912_HPP# include <boost/detail/workaround.hpp># if !BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x564)) \  && !BOOST_WORKAROUND(__GNUC__, < 3)#  include <boost/mpl/insert.hpp>#  include <boost/mpl/set/set0.hpp>#  include <boost/mpl/has_key.hpp>namespace boost { namespace parameter { namespace aux {typedef mpl::set0<> set0;template <class Set, class K>struct insert_{    typedef typename mpl::insert<Set, K>::type type;};template <class Set, class K>struct has_key_{    typedef typename mpl::has_key<Set, K>::type type;};}}} // namespace boost::parameter::aux# else#  include <boost/mpl/list.hpp>#  include <boost/mpl/end.hpp>#  include <boost/mpl/find.hpp>#  include <boost/mpl/not.hpp>#  include <boost/mpl/push_front.hpp>namespace boost { namespace parameter { namespace aux {typedef mpl::list0<> set0;template <class Set, class K>struct insert_{    typedef typename mpl::push_front<Set, K>::type type;};template <class Set, class K>struct has_key_{    typedef typename mpl::find<Set, K>::type iter;    typedef mpl::not_<        is_same<iter, typename mpl::end<Set>::type>     > type;};}}} // namespace boost::parameter::aux# endif#endif // BOOST_PARAMETER_SET_060912_HPP

⌨️ 快捷键说明

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