forked from boostorg/range
fully quality boost::enable_if since msvc namespaces dont work.
This commit is contained in:
@ -32,7 +32,7 @@ namespace boost
|
|||||||
template<typename Iterator, typename UnaryFunction>
|
template<typename Iterator, typename UnaryFunction>
|
||||||
inline UnaryFunction
|
inline UnaryFunction
|
||||||
for_each_impl(Iterator first, Iterator last, UnaryFunction fun,
|
for_each_impl(Iterator first, Iterator last, UnaryFunction fun,
|
||||||
typename enable_if<
|
typename ::boost::enable_if<
|
||||||
is_reference_wrapper<UnaryFunction>,
|
is_reference_wrapper<UnaryFunction>,
|
||||||
void
|
void
|
||||||
>::type* = 0)
|
>::type* = 0)
|
||||||
|
@ -356,7 +356,7 @@ namespace boost
|
|||||||
OtherDifference,
|
OtherDifference,
|
||||||
Buffer
|
Buffer
|
||||||
>& other,
|
>& other,
|
||||||
typename enable_if<
|
typename ::boost::enable_if<
|
||||||
typename mpl::and_<
|
typename mpl::and_<
|
||||||
typename is_mutable_reference<OtherReference>::type,
|
typename is_mutable_reference<OtherReference>::type,
|
||||||
typename is_const_reference<Reference>::type
|
typename is_const_reference<Reference>::type
|
||||||
@ -387,7 +387,7 @@ namespace boost
|
|||||||
, OtherDifference
|
, OtherDifference
|
||||||
, Buffer
|
, Buffer
|
||||||
>& other,
|
>& other,
|
||||||
typename enable_if<
|
typename ::boost::enable_if<
|
||||||
typename mpl::or_<
|
typename mpl::or_<
|
||||||
typename mpl::and_<
|
typename mpl::and_<
|
||||||
typename is_mutable_reference<OtherReference>::type,
|
typename is_mutable_reference<OtherReference>::type,
|
||||||
@ -423,7 +423,7 @@ namespace boost
|
|||||||
, OtherDifference
|
, OtherDifference
|
||||||
, Buffer
|
, Buffer
|
||||||
>& other,
|
>& other,
|
||||||
typename enable_if<
|
typename ::boost::enable_if<
|
||||||
typename is_convertible_to_value_as_reference<
|
typename is_convertible_to_value_as_reference<
|
||||||
OtherReference
|
OtherReference
|
||||||
, Reference
|
, Reference
|
||||||
|
@ -35,7 +35,7 @@ namespace boost
|
|||||||
template<class T>
|
template<class T>
|
||||||
struct has_range_iterator_impl<
|
struct has_range_iterator_impl<
|
||||||
T,
|
T,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
BOOST_DEDUCED_TYPENAME mpl::eval_if<is_const<T>,
|
BOOST_DEDUCED_TYPENAME mpl::eval_if<is_const<T>,
|
||||||
has_type<range_const_iterator<
|
has_type<range_const_iterator<
|
||||||
BOOST_DEDUCED_TYPENAME remove_const<T>::type> >,
|
BOOST_DEDUCED_TYPENAME remove_const<T>::type> >,
|
||||||
@ -56,7 +56,7 @@ namespace boost
|
|||||||
template<class T>
|
template<class T>
|
||||||
struct has_range_const_iterator_impl<
|
struct has_range_const_iterator_impl<
|
||||||
T,
|
T,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
has_type<range_const_iterator<T> >
|
has_type<range_const_iterator<T> >
|
||||||
>::type
|
>::type
|
||||||
>
|
>
|
||||||
|
@ -422,7 +422,7 @@ public:
|
|||||||
template<class SinglePassRange>
|
template<class SinglePassRange>
|
||||||
iterator_range(
|
iterator_range(
|
||||||
const SinglePassRange& r,
|
const SinglePassRange& r,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<const SinglePassRange>
|
is_compatible_range<const SinglePassRange>
|
||||||
>::type* = 0
|
>::type* = 0
|
||||||
)
|
)
|
||||||
@ -433,7 +433,7 @@ public:
|
|||||||
template<class SinglePassRange>
|
template<class SinglePassRange>
|
||||||
iterator_range(
|
iterator_range(
|
||||||
SinglePassRange& r,
|
SinglePassRange& r,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<SinglePassRange>
|
is_compatible_range<SinglePassRange>
|
||||||
>::type* = 0
|
>::type* = 0
|
||||||
)
|
)
|
||||||
@ -497,7 +497,7 @@ public:
|
|||||||
// comparison operators
|
// comparison operators
|
||||||
/////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
@ -520,7 +520,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
@ -543,7 +543,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
@ -566,7 +566,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
@ -589,7 +589,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
@ -612,7 +612,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class SinglePassRange1, class SinglePassRange2>
|
template<class SinglePassRange1, class SinglePassRange2>
|
||||||
inline BOOST_DEDUCED_TYPENAME enable_if<
|
inline BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
mpl::or_<
|
mpl::or_<
|
||||||
is_convertible<
|
is_convertible<
|
||||||
const SinglePassRange1&,
|
const SinglePassRange1&,
|
||||||
|
@ -30,7 +30,7 @@ namespace boost
|
|||||||
{
|
{
|
||||||
|
|
||||||
template<class SinglePassRange>
|
template<class SinglePassRange>
|
||||||
inline typename enable_if<
|
inline typename ::boost::enable_if<
|
||||||
has_member_size<SinglePassRange>,
|
has_member_size<SinglePassRange>,
|
||||||
typename range_size<const SinglePassRange>::type
|
typename range_size<const SinglePassRange>::type
|
||||||
>::type
|
>::type
|
||||||
|
@ -61,7 +61,7 @@ namespace boost
|
|||||||
template<typename C>
|
template<typename C>
|
||||||
struct range_size<
|
struct range_size<
|
||||||
C,
|
C,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<has_size_type<C>, void>::type
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<has_size_type<C>, void>::type
|
||||||
>
|
>
|
||||||
{
|
{
|
||||||
typedef BOOST_DEDUCED_TYPENAME C::size_type type;
|
typedef BOOST_DEDUCED_TYPENAME C::size_type type;
|
||||||
|
@ -190,7 +190,7 @@ public:
|
|||||||
template< class ForwardRange2 >
|
template< class ForwardRange2 >
|
||||||
sub_range(
|
sub_range(
|
||||||
ForwardRange2& r,
|
ForwardRange2& r,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<ForwardRange2>
|
is_compatible_range<ForwardRange2>
|
||||||
>::type* = 0
|
>::type* = 0
|
||||||
)
|
)
|
||||||
@ -201,7 +201,7 @@ public:
|
|||||||
template< class ForwardRange2 >
|
template< class ForwardRange2 >
|
||||||
sub_range(
|
sub_range(
|
||||||
const ForwardRange2& r,
|
const ForwardRange2& r,
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<const ForwardRange2>
|
is_compatible_range<const ForwardRange2>
|
||||||
>::type* = 0
|
>::type* = 0
|
||||||
)
|
)
|
||||||
@ -235,7 +235,7 @@ public:
|
|||||||
{ }
|
{ }
|
||||||
|
|
||||||
template<class ForwardRange2>
|
template<class ForwardRange2>
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<ForwardRange2>,
|
is_compatible_range<ForwardRange2>,
|
||||||
sub_range&
|
sub_range&
|
||||||
>::type
|
>::type
|
||||||
@ -246,7 +246,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
template<class ForwardRange2>
|
template<class ForwardRange2>
|
||||||
BOOST_DEDUCED_TYPENAME enable_if<
|
BOOST_DEDUCED_TYPENAME ::boost::enable_if<
|
||||||
is_compatible_range<const ForwardRange2>,
|
is_compatible_range<const ForwardRange2>,
|
||||||
sub_range&
|
sub_range&
|
||||||
>::type
|
>::type
|
||||||
|
Reference in New Issue
Block a user