inline iterator_range< BOOST_STRING_TYPENAME range_iterator<Range1T>::type> find_first( Range1T& Input, const Range2T& Search) { return find(Input, first_finder(Search)); }
inline iterator_range< BOOST_STRING_TYPENAME result_iterator_of<Collection1T>::type> find_first( Collection1T& Input, const Collection2T& Search) { return first_finder(Search)( begin(Input),end(Input)); }
inline SequenceT erase_all_copy( const SequenceT& Input, const RangeT& Search ) { return find_format_all_copy( Input, first_finder(Search), empty_formatter(Input) ); }
inline void erase_all( SequenceT& Input, const RangeT& Search ) { find_format_all( Input, first_finder(Search), empty_formatter(Input) ); }
inline iterator_range< BOOST_STRING_TYPENAME range_iterator<Range1T>::type> ifind_first( Range1T& Input, const Range2T& Search, const std::locale& Loc=std::locale()) { return find(Input, first_finder(Search,is_iequal(Loc))); }
inline void replace_first( SequenceT& Input, const Collection1T& Search, const Collection2T& Format ) { find_format( Input, first_finder(Search), const_formatter(Format) ); }
inline void ierase_all( SequenceT& Input, const RangeT& Search, const std::locale& Loc=std::locale() ) { find_format_all( Input, first_finder(Search, is_iequal(Loc)), empty_formatter(Input) ); }
inline SequenceSequenceT& find_all( SequenceSequenceT& Result, Range1T& Input, const Range2T& Search) { return iter_find( Result, Input, first_finder(Search) ); }
inline iterator_range< BOOST_STRING_TYPENAME result_iterator_of<Collection1T>::type> ifind_first( Collection1T& Input, const Collection2T& Search, const std::locale& Loc=std::locale()) { return first_finder(Search,is_iequal(Loc))( begin(Input),end(Input)); }
inline SequenceT replace_all_copy( const SequenceT& Input, const Range1T& Search, const Range2T& Format ) { return find_format_all_copy( Input, first_finder(Search), const_formatter(Format) ); }
inline SequenceT replace_first_copy( const SequenceT& Input, const Collection1T& Search, const Collection2T& Format ) { return find_format_copy( Input, first_finder(Search), const_formatter(Format) ); }
inline SequenceT ierase_all_copy( const SequenceT& Input, const RangeT& Search, const std::locale& Loc=std::locale() ) { return find_format_all_copy( Input, first_finder(Search, is_iequal(Loc)), empty_formatter(Input) ); }
inline void replace_all( SequenceT& Input, const Range1T& Search, const Range2T& Format ) { find_format_all( Input, first_finder(Search), const_formatter(Format) ); }
inline void ireplace_first( SequenceT& Input, const Collection1T& Search, const Collection2T& Format, const std::locale& Loc=std::locale() ) { find_format( Input, first_finder(Search, is_iequal(Loc)), const_formatter(Format) ); }
inline void ireplace_all( SequenceT& Input, const Range1T& Search, const Range2T& Format, const std::locale& Loc=std::locale() ) { find_format_all( Input, first_finder(Search, is_iequal(Loc)), const_formatter(Format) ); }
inline SequenceT ireplace_all_copy( const SequenceT& Input, const Range1T& Search, const Range2T& Format, const std::locale& Loc=std::locale() ) { return find_format_all_copy( Input, first_finder(Search, is_iequal(Loc)), const_formatter(Format) ); }
inline OutputIteratorT erase_all_copy( OutputIteratorT Output, const Range1T& Input, const Range2T& Search ) { return find_format_all_copy( Output, Input, first_finder(Search), empty_formatter(Input) ); }
inline SequenceSequenceT& ifind_all( SequenceSequenceT& Result, Range1T& Input, const Range2T& Search, const std::locale& Loc=std::locale() ) { return iter_find( Result, Input, first_finder(Search, is_iequal(Loc) ) ); }
inline OutputIteratorT replace_first_copy( OutputIteratorT Output, const Collection1T& Input, const Collection2T& Search, const Collection3T& Format) { return find_format_copy( Output, Input, first_finder(Search), const_formatter(Format) ); }
inline OutputIteratorT replace_all_copy( OutputIteratorT Output, const Range1T& Input, const Range2T& Search, const Range3T& Format ) { return find_format_all_copy( Output, Input, first_finder(Search), const_formatter(Format) ); }
inline OutputIteratorT ierase_all_copy( OutputIteratorT Output, const Range1T& Input, const Range2T& Search, const std::locale& Loc=std::locale() ) { return find_format_all_copy( Output, Input, first_finder(Search, is_iequal(Loc)), empty_formatter(Input) ); }
inline OutputIteratorT ireplace_first_copy( OutputIteratorT Output, const Range1T& Input, const Range2T& Search, const Range3T& Format, const std::locale& Loc=std::locale() ) { return find_format_copy( Output, Input, first_finder(Search, is_iequal(Loc)), const_formatter(Format) ); }
inline bool contains( const Range1T& Input, const Range2T& Test, PredicateT Comp) { if (empty(Test)) { // Empty range is contained always return true; } // Use the temporary variable to make VACPP happy bool bResult=(first_finder(Test,Comp)(begin(Input), end(Input))); return bResult; }
inline bool contains( const Range1T& Input, const Range2T& Test, PredicateT Comp) { iterator_range<BOOST_STRING_TYPENAME range_const_iterator<Range1T>::type> lit_input(as_literal(Input)); iterator_range<BOOST_STRING_TYPENAME range_const_iterator<Range2T>::type> lit_test(as_literal(Test)); if (empty(lit_test)) { // Empty range is contained always return true; } // Use the temporary variable to make VACPP happy bool bResult=(first_finder(lit_test,Comp)(begin(lit_input), end(lit_input))); return bResult; }