forked from boostorg/fusion
usability tweaks: functions that return iterators return them as *const* to allow chaining when the recipient function expects a reference (e.g. foo(Iter&) )
[SVN r35940]
This commit is contained in:
@ -56,7 +56,7 @@ namespace boost { namespace fusion
|
||||
lazy_disable_if<
|
||||
is_const<Sequence>
|
||||
, result_of::find<Sequence, T>
|
||||
>::type
|
||||
>::type const
|
||||
find(Sequence& seq)
|
||||
{
|
||||
typedef typename result_of::find<Sequence, T>::filter filter;
|
||||
@ -64,7 +64,7 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename T, typename Sequence>
|
||||
inline typename result_of::find<Sequence const, T>::type
|
||||
inline typename result_of::find<Sequence const, T>::type const
|
||||
find(Sequence const& seq)
|
||||
{
|
||||
typedef typename result_of::find<Sequence const, T>::filter filter;
|
||||
|
@ -51,7 +51,7 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename Pred, typename Sequence>
|
||||
inline typename result_of::find_if<Sequence const, Pred>::type
|
||||
inline typename result_of::find_if<Sequence const, Pred>::type const
|
||||
find_if(Sequence const& seq)
|
||||
{
|
||||
typedef
|
||||
|
@ -75,14 +75,14 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <int N, typename Iterator>
|
||||
inline typename result_of::advance_c<Iterator, N>::type
|
||||
inline typename result_of::advance_c<Iterator, N>::type const
|
||||
advance_c(Iterator const& i)
|
||||
{
|
||||
return result_of::advance_c<Iterator, N>::call(i);
|
||||
}
|
||||
|
||||
template<typename N, typename Iterator>
|
||||
inline typename result_of::advance<Iterator, N>::type
|
||||
inline typename result_of::advance<Iterator, N>::type const
|
||||
advance(Iterator const& i)
|
||||
{
|
||||
return result_of::advance<Iterator, N>::call(i);
|
||||
|
@ -54,7 +54,7 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename Iterator>
|
||||
typename result_of::next<Iterator>::type
|
||||
typename result_of::next<Iterator>::type const
|
||||
next(Iterator const& i)
|
||||
{
|
||||
return result_of::next<Iterator>::call(i);
|
||||
|
@ -54,7 +54,7 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename Iterator>
|
||||
typename result_of::prior<Iterator>::type
|
||||
typename result_of::prior<Iterator>::type const
|
||||
prior(Iterator const& i)
|
||||
{
|
||||
return result_of::prior<Iterator>::call(i);
|
||||
|
@ -58,14 +58,14 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename Sequence>
|
||||
inline typename result_of::begin<Sequence>::type
|
||||
inline typename result_of::begin<Sequence>::type const
|
||||
begin(Sequence& seq)
|
||||
{
|
||||
return result_of::begin<Sequence>::call(seq);
|
||||
}
|
||||
|
||||
template <typename Sequence>
|
||||
inline typename result_of::begin<Sequence const>::type
|
||||
inline typename result_of::begin<Sequence const>::type const
|
||||
begin(Sequence const& seq)
|
||||
{
|
||||
return result_of::begin<Sequence const>::call(seq);
|
||||
|
@ -58,14 +58,14 @@ namespace boost { namespace fusion
|
||||
}
|
||||
|
||||
template <typename Sequence>
|
||||
inline typename result_of::end<Sequence>::type
|
||||
inline typename result_of::end<Sequence>::type const
|
||||
end(Sequence& seq)
|
||||
{
|
||||
return result_of::end<Sequence>::call(seq);
|
||||
}
|
||||
|
||||
template <typename Sequence>
|
||||
inline typename result_of::end<Sequence const>::type
|
||||
inline typename result_of::end<Sequence const>::type const
|
||||
end(Sequence const& seq)
|
||||
{
|
||||
return result_of::end<Sequence const>::call(seq);
|
||||
|
Reference in New Issue
Block a user