diff --git a/include/boost/range/adaptor/replaced.hpp b/include/boost/range/adaptor/replaced.hpp index 1950b82..761ba20 100644 --- a/include/boost/range/adaptor/replaced.hpp +++ b/include/boost/range/adaptor/replaced.hpp @@ -101,12 +101,10 @@ namespace boost void operator=(const replace_holder&); }; - template< class SinglePassRange > + template< class SinglePassRange, + class RangeValueType = BOOST_DEDUCED_TYPENAME range_value::type> inline replaced_range - operator|( - SinglePassRange& r, - const replace_holder< - BOOST_DEDUCED_TYPENAME range_value::type>& f ) + operator|(SinglePassRange& r, const replace_holder& f) { BOOST_RANGE_CONCEPT_ASSERT(( SinglePassRangeConcept)); @@ -114,12 +112,10 @@ namespace boost return replaced_range(r, f.val1, f.val2); } - template< class SinglePassRange > + template< class SinglePassRange, + class RangeValueType = BOOST_DEDUCED_TYPENAME range_value::type> inline replaced_range - operator|( - const SinglePassRange& r, - const replace_holder< - BOOST_DEDUCED_TYPENAME range_value::type>& f) + operator|(const SinglePassRange& r, const replace_holder& f) { BOOST_RANGE_CONCEPT_ASSERT(( SinglePassRangeConcept)); @@ -139,11 +135,10 @@ namespace boost range_detail::forwarder2(); } - template + template< class SinglePassRange, + class RangeValueType = BOOST_DEDUCED_TYPENAME range_value::type> inline replaced_range - replace(SinglePassRange& rng, - BOOST_DEDUCED_TYPENAME range_value::type from, - BOOST_DEDUCED_TYPENAME range_value::type to) + replace(SinglePassRange& rng, RangeValueType from, RangeValueType to) { BOOST_RANGE_CONCEPT_ASSERT(( SinglePassRangeConcept)); @@ -151,11 +146,10 @@ namespace boost return replaced_range(rng, from, to); } - template + template< class SinglePassRange, + class RangeValueType = BOOST_DEDUCED_TYPENAME range_value::type> inline replaced_range - replace(const SinglePassRange& rng, - BOOST_DEDUCED_TYPENAME range_value::type from, - BOOST_DEDUCED_TYPENAME range_value::type to) + replace(const SinglePassRange& rng, RangeValueType from, RangeValueType to) { BOOST_RANGE_CONCEPT_ASSERT(( SinglePassRangeConcept));