mirror of
https://github.com/boostorg/mpl.git
synced 2025-08-03 23:04:33 +02:00
vc6 workarounds for real
[SVN r26508]
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
#include <boost/mpl/key_type_fwd.hpp>
|
#include <boost/mpl/key_type_fwd.hpp>
|
||||||
#include <boost/mpl/sequence_tag.hpp>
|
#include <boost/mpl/sequence_tag.hpp>
|
||||||
|
#include <boost/mpl/apply_wrap.hpp>
|
||||||
#include <boost/mpl/aux_/na_spec.hpp>
|
#include <boost/mpl/aux_/na_spec.hpp>
|
||||||
#include <boost/mpl/aux_/lambda_support.hpp>
|
#include <boost/mpl/aux_/lambda_support.hpp>
|
||||||
|
|
||||||
@@ -27,22 +28,15 @@ template<
|
|||||||
, typename BOOST_MPL_AUX_NA_PARAM(T)
|
, typename BOOST_MPL_AUX_NA_PARAM(T)
|
||||||
>
|
>
|
||||||
struct key_type
|
struct key_type
|
||||||
: key_type_impl< typename sequence_tag<AssociativeSequence>::type >
|
: apply_wrap2<
|
||||||
::template apply<AssociativeSequence,T>
|
key_type_impl< typename sequence_tag<AssociativeSequence>::type >
|
||||||
|
, AssociativeSequence, T>
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,key_type,(AssociativeSequence,T))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,key_type,(AssociativeSequence,T))
|
||||||
};
|
};
|
||||||
|
|
||||||
BOOST_MPL_AUX_NA_SPEC(2, key_type)
|
BOOST_MPL_AUX_NA_SPEC(2, key_type)
|
||||||
|
|
||||||
#if BOOST_MPL_CFG_MSVC_60_ETI_BUG
|
|
||||||
template<>
|
|
||||||
struct key_type<int, int>
|
|
||||||
{
|
|
||||||
typedef int type;
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
#endif // BOOST_MPL_KEY_TYPE_HPP_INCLUDED
|
#endif // BOOST_MPL_KEY_TYPE_HPP_INCLUDED
|
||||||
|
@@ -17,6 +17,7 @@
|
|||||||
|
|
||||||
#include <boost/mpl/value_type_fwd.hpp>
|
#include <boost/mpl/value_type_fwd.hpp>
|
||||||
#include <boost/mpl/sequence_tag.hpp>
|
#include <boost/mpl/sequence_tag.hpp>
|
||||||
|
#include <boost/mpl/apply_wrap.hpp>
|
||||||
#include <boost/mpl/aux_/na_spec.hpp>
|
#include <boost/mpl/aux_/na_spec.hpp>
|
||||||
#include <boost/mpl/aux_/lambda_support.hpp>
|
#include <boost/mpl/aux_/lambda_support.hpp>
|
||||||
|
|
||||||
@@ -27,22 +28,14 @@ template<
|
|||||||
, typename BOOST_MPL_AUX_NA_PARAM(T)
|
, typename BOOST_MPL_AUX_NA_PARAM(T)
|
||||||
>
|
>
|
||||||
struct value_type
|
struct value_type
|
||||||
: value_type_impl< typename sequence_tag<AssociativeSequence>::type >
|
: apply_wrap2<
|
||||||
::template apply<AssociativeSequence,T>
|
value_type_impl< typename sequence_tag<AssociativeSequence>::type >
|
||||||
|
, AssociativeSequence, T >
|
||||||
{
|
{
|
||||||
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,value_type,(AssociativeSequence,T))
|
BOOST_MPL_AUX_LAMBDA_SUPPORT(2,value_type,(AssociativeSequence,T))
|
||||||
};
|
};
|
||||||
|
|
||||||
BOOST_MPL_AUX_NA_SPEC(2, value_type)
|
BOOST_MPL_AUX_NA_SPEC(2, value_type)
|
||||||
|
|
||||||
#if BOOST_MPL_CFG_MSVC_60_ETI_BUG
|
|
||||||
template<>
|
|
||||||
struct value_type<int, int>
|
|
||||||
{
|
|
||||||
typedef int type;
|
|
||||||
};
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user