mirror of
https://git.suyu.dev/suyu/ext-boost.git
synced 2026-01-06 14:38:13 +01:00
Add boost::icl::interval_map
This commit is contained in:
parent
15ac6eef19
commit
3bf6369aa9
359 changed files with 74778 additions and 0 deletions
52
boost/mpl/tag.hpp
Normal file
52
boost/mpl/tag.hpp
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
|
||||
#ifndef BOOST_MPL_TAG_HPP_INCLUDED
|
||||
#define BOOST_MPL_TAG_HPP_INCLUDED
|
||||
|
||||
// Copyright Aleksey Gurtovoy 2004
|
||||
//
|
||||
// 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)
|
||||
//
|
||||
// See http://www.boost.org/libs/mpl for documentation.
|
||||
|
||||
// $Id$
|
||||
// $Date$
|
||||
// $Revision$
|
||||
|
||||
#include <boost/mpl/eval_if.hpp>
|
||||
#include <boost/mpl/void.hpp>
|
||||
#include <boost/mpl/aux_/has_tag.hpp>
|
||||
#include <boost/mpl/aux_/config/eti.hpp>
|
||||
|
||||
namespace boost { namespace mpl {
|
||||
|
||||
namespace aux {
|
||||
template< typename T > struct tag_impl
|
||||
{
|
||||
typedef typename T::tag type;
|
||||
};
|
||||
}
|
||||
|
||||
template< typename T, typename Default = void_ > struct tag
|
||||
#if !defined(BOOST_MPL_CFG_MSVC_ETI_BUG)
|
||||
: if_<
|
||||
aux::has_tag<T>
|
||||
, aux::tag_impl<T>
|
||||
, Default
|
||||
>::type
|
||||
{
|
||||
#else
|
||||
{
|
||||
typedef typename eval_if<
|
||||
aux::has_tag<T>
|
||||
, aux::tag_impl<T>
|
||||
, Default
|
||||
>::type type;
|
||||
|
||||
#endif
|
||||
};
|
||||
|
||||
}}
|
||||
|
||||
#endif // BOOST_MPL_TAG_HPP_INCLUDED
|
||||
Loading…
Add table
Add a link
Reference in a new issue