|  | Home | Libraries | People | FAQ | More | 
template<class ForwardRange1, class ForwardRange2> typename range_iterator<ForwardRange1>::type search(ForwardRange1& rng1, const ForwardRange2& rng2); template<class ForwardRange1, class ForwardRange2> typename range_iterator<const ForwardRange1>::type search(const ForwardRange1& rng1, const ForwardRange2& rng2); template< class ForwardRange1, class ForwardRange2, class BinaryPredicate > typename range_iterator<ForwardRange1>::type, search(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred); template< class ForwardRange1, class ForwardRange2, class BinaryPredicate > typename range_iterator<const ForwardRange1>::type search(const ForwardRange1& rng1, ForwardRange2& rng2, BinaryPredicate pred); template< range_return_value re, class ForwardRange1, class ForwardRange2 > typename range_return<ForwardRange1, re>::type search(ForwardRange1& rng1, const ForwardRange2& rng2); template< range_return_value re, class ForwardRange1, class ForwardRange2 > typename range_return<const ForwardRange1, re>::type search(const ForwardRange1& rng1, const ForwardRange2& rng2); template< range_return_value re, class ForwardRange1, class ForwardRange2, class BinaryPredicate > typename range_return<ForwardRange1, re>::type, search(ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred); template< range_return_value re, class ForwardRange1, class ForwardRange2, class BinaryPredicate > typename range_return<const ForwardRange1, re>::type search(const ForwardRange1& rng1, const ForwardRange2& rng2, BinaryPredicate pred);
            The versions of search
            that return an iterator, return an iterator to the start of the first
            subsequence in rng1 that
            is equal to the subsequence rng2.
            The end(rng1)
            is returned if no such subsequence exists in rng1.
            Equality is determined by operator== for non-predicate versions of search, and by satisfying pred in the predicate versions.
          
            The versions of search
            that return a range_return,
            defines found in the
            same manner as the returned iterator described above.
          
            Defined in the header file boost/range/algorithm/search.hpp
          
For the non-predicate versions:
ForwardRange1 is
                a model of the Forward
                Range Concept.
              ForwardRange2 is
                a model of the Forward
                Range Concept.
              ForwardRange1's value
                type is a model of the EqualityComparableConcept.
              ForwardRange2's value
                type is a model of the EqualityComparableConcept.
              ForwardRange1s value
                type can be compared for equality with ForwardRange2's
                value type.
              For the predicate versions:
ForwardRange1 is
                a model of the Forward
                Range Concept.
              ForwardRange2 is
                a model of the Forward
                Range Concept.
              BinaryPredicate is
                a model of the BinaryPredicateConcept.
              ForwardRange1's value
                type is convertible to BinaryPredicate's
                first argument type.
              ForwardRange2's value
                type is convertible to BinaryPredicate's
                second argument type.
              Average complexity is Linear. Worst-case complexity is quadratic.