Boost.RangeEx merged into Boost.Range

[SVN r60897]
This commit is contained in:
Neil Groves
2010-03-28 16:08:35 +00:00
parent 1461479a17
commit b0d1db7c2e
471 changed files with 48610 additions and 2065 deletions

View File

@ -0,0 +1,31 @@
[section:counting_range counting_range]
[heading Prototype]
``
template< class Incrementable > inline
iterator_range< counting_iterator<Incrementable> >
counting_range(Incrementable first, Incrementable last);
template< class SinglePassRange > inline
iterator_range< counting_iterator<typename range_iterator<SinglePassRange>::type >
counting_range(const SinglePassRange& rng);
template< class SinglePassRange > inline
iterator_range< counting_iterator<typename range_iterator<SinglePassRange>::type >
counting_range(SinglePassRange& rng);
``
[heading Description]
`counting_range` is a function to generator that generates an `iterator_range` wrapping a `counting_iterator` (from Boost.Iterator).
[heading Definition]
Defined in header file `boost/range/counting_range.hpp`
[heading Requirements]
# `Incrementable` is a model of the `Incrementable` Concept.
[endsect]

View File

@ -0,0 +1,35 @@
[section:irange irange]
[heading Prototype]
``
template<class Integer>
integer_range< range_detail::integer_iterator<Integer> >
irange(Integer first, Integer last);
template<class Integer, class StepSize>
integer_range< range_detail::integer_iterator_with_step<Integer, StepSize> >
irange(Integer first, Integer last, StepSize step_size);
``
[heading Description]
`irange` is a function to generate an Integer Range.
`irange` allows treating integers as a model of the __random_access_range__ Concept. It should be noted that the `first` and `last` parameters denoted a half-open range.
[heading Definition]
Defined in the header file `boost/range/irange.hpp`
[heading Requirements]
# `Integer` is a model of the `Integer` Concept.
# `StepSize` is a model of the `SignedInteger` Concept.
[heading Complexity]
Constant. Since this function generates a new range the most significant performance cost is incurred through the iteration of the generated range.
[endsect]

View File

@ -0,0 +1,19 @@
[section:istream_range istream_range]
[heading Prototype]
``
template< class Type, class Elem, class Traits > inline
iterator_range< std::istream_iterator<Type, Elem, Traits> >
istream_range(std::basic_istream<Elem, Traits>& in);
``
[heading Description]
`istream_range` is a function to generator that generates an `iterator_range` wrapping a `std::istream_iterator`.
[heading Definition]
Defined in header file `boost/range/istream_range.hpp`
[endsect]