10 using namespace wibble;
11 using namespace operators;
15 Test iteratorRange() {
33 std::copy( r.
begin(), r.
end(), back_inserter( b ) );
37 Test copyToConsumer() {
39 std::vector< int > vec;
48 assert( r1.begin() + 2 == r1.end() );
49 while ( !r.
empty() ) {
57 Test _filteredRange() {
67 std::bind1st( std::equal_to< int >(), 10 ) );
85 assert( v.begin() + 3 == v.end() );
89 std::vector< int > vec;
101 Test _transformedRange() {
103 std::vector< int > xv;
108 std::bind1st( std::plus< int >(), 2 ) );
116 Test _transformedRange2() {
118 std::vector< unsigned > xv;
123 range( xv ), std::bind1st( std::plus< int >(), 2 ) );
131 Test tailOfIteratorRange() {
133 a.insert( a.begin(), 30 );
134 a.insert( a.begin(), 10 );
135 a.insert( a.begin(), 20 );
149 a.insert( a.begin(), 30 );
150 a.insert( a.begin(), 10 );
151 a.insert( a.begin(), 20 );
153 range( a.begin(), a.end() ) );
163 static void removeFirst(
int &i ) {
167 static bool isEnd(
const int &i ) {
171 Test _generatedRange() {