Compare commits

..

1 Commits

Author SHA1 Message Date
eb56a017f2 Created a branch from trunk
[SVN r38959]
2007-08-26 05:34:35 +00:00
17 changed files with 39 additions and 81 deletions

View File

@ -17,6 +17,8 @@
#include <boost/range/begin.hpp> #include <boost/range/begin.hpp>
#include <boost/range/end.hpp> #include <boost/range/end.hpp>
#include <boost/range/iterator.hpp> #include <boost/range/iterator.hpp>
#include <boost/range/const_iterator.hpp>
#include <boost/range/result_iterator.hpp>
#include <boost/range/as_literal.hpp> #include <boost/range/as_literal.hpp>
#include <boost/algorithm/string/finder.hpp> #include <boost/algorithm/string/finder.hpp>
@ -48,7 +50,7 @@ namespace boost {
*/ */
template<typename RangeT, typename FinderT> template<typename RangeT, typename FinderT>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
find( find(
RangeT& Input, RangeT& Input,
const FinderT& Finder) const FinderT& Finder)
@ -76,7 +78,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
find_first( find_first(
Range1T& Input, Range1T& Input,
const Range2T& Search) const Range2T& Search)
@ -102,7 +104,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
ifind_first( ifind_first(
Range1T& Input, Range1T& Input,
const Range2T& Search, const Range2T& Search,
@ -129,7 +131,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
find_last( find_last(
Range1T& Input, Range1T& Input,
const Range2T& Search) const Range2T& Search)
@ -155,7 +157,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
ifind_last( ifind_last(
Range1T& Input, Range1T& Input,
const Range2T& Search, const Range2T& Search,
@ -183,7 +185,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
find_nth( find_nth(
Range1T& Input, Range1T& Input,
const Range2T& Search, const Range2T& Search,
@ -213,7 +215,7 @@ namespace boost {
*/ */
template<typename Range1T, typename Range2T> template<typename Range1T, typename Range2T>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<Range1T>::type> BOOST_STRING_TYPENAME range_result_iterator<Range1T>::type>
ifind_nth( ifind_nth(
Range1T& Input, Range1T& Input,
const Range2T& Search, const Range2T& Search,
@ -245,7 +247,7 @@ namespace boost {
*/ */
template<typename RangeT> template<typename RangeT>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
find_head( find_head(
RangeT& Input, RangeT& Input,
int N) int N)
@ -276,7 +278,7 @@ namespace boost {
*/ */
template<typename RangeT> template<typename RangeT>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
find_tail( find_tail(
RangeT& Input, RangeT& Input,
int N) int N)
@ -305,7 +307,7 @@ namespace boost {
*/ */
template<typename RangeT, typename PredicateT> template<typename RangeT, typename PredicateT>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
find_token( find_token(
RangeT& Input, RangeT& Input,
PredicateT Pred, PredicateT Pred,

View File

@ -17,7 +17,6 @@
#include <boost/range/begin.hpp> #include <boost/range/begin.hpp>
#include <boost/range/end.hpp> #include <boost/range/end.hpp>
#include <boost/range/const_iterator.hpp> #include <boost/range/const_iterator.hpp>
#include <boost/range/as_literal.hpp>
#include <boost/algorithm/string/concept.hpp> #include <boost/algorithm/string/concept.hpp>
#include <boost/algorithm/string/detail/find_format.hpp> #include <boost/algorithm/string/detail/find_format.hpp>

View File

@ -18,7 +18,7 @@
#include <boost/range/iterator_range.hpp> #include <boost/range/iterator_range.hpp>
#include <boost/range/begin.hpp> #include <boost/range/begin.hpp>
#include <boost/range/end.hpp> #include <boost/range/end.hpp>
#include <boost/range/iterator.hpp> #include <boost/range/result_iterator.hpp>
#include <boost/range/as_literal.hpp> #include <boost/range/as_literal.hpp>
#include <boost/algorithm/string/detail/find_iterator.hpp> #include <boost/algorithm/string/detail/find_iterator.hpp>
@ -185,12 +185,12 @@ namespace boost {
*/ */
template<typename RangeT, typename FinderT> template<typename RangeT, typename FinderT>
inline find_iterator< inline find_iterator<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
make_find_iterator( make_find_iterator(
RangeT& Collection, RangeT& Collection,
FinderT Finder) FinderT Finder)
{ {
return find_iterator<BOOST_STRING_TYPENAME range_iterator<RangeT>::type>( return find_iterator<BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>(
Collection, Finder); Collection, Finder);
} }
@ -363,12 +363,12 @@ namespace boost {
*/ */
template<typename RangeT, typename FinderT> template<typename RangeT, typename FinderT>
inline split_iterator< inline split_iterator<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>
make_split_iterator( make_split_iterator(
RangeT& Collection, RangeT& Collection,
FinderT Finder) FinderT Finder)
{ {
return split_iterator<BOOST_STRING_TYPENAME range_iterator<RangeT>::type>( return split_iterator<BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type>(
Collection, Finder); Collection, Finder);
} }

View File

@ -19,7 +19,7 @@
#include <boost/range/iterator_range.hpp> #include <boost/range/iterator_range.hpp>
#include <boost/range/begin.hpp> #include <boost/range/begin.hpp>
#include <boost/range/end.hpp> #include <boost/range/end.hpp>
#include <boost/range/iterator.hpp> #include <boost/range/result_iterator.hpp>
#include <boost/range/value_type.hpp> #include <boost/range/value_type.hpp>
#include <boost/range/as_literal.hpp> #include <boost/range/as_literal.hpp>
@ -76,12 +76,12 @@ namespace boost {
{ {
function_requires< function_requires<
FinderConcept<FinderT, FinderConcept<FinderT,
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> >(); BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type> >();
iterator_range<BOOST_STRING_TYPENAME range_iterator<RangeT>::type> lit_input(as_literal(Input)); iterator_range<BOOST_STRING_TYPENAME range_iterator<RangeT>::type> lit_input(as_literal(Input));
typedef BOOST_STRING_TYPENAME typedef BOOST_STRING_TYPENAME
range_iterator<RangeT>::type input_iterator_type; range_result_iterator<RangeT>::type input_iterator_type;
typedef find_iterator<input_iterator_type> find_iterator_type; typedef find_iterator<input_iterator_type> find_iterator_type;
typedef detail::copy_iterator_rangeF< typedef detail::copy_iterator_rangeF<
BOOST_STRING_TYPENAME BOOST_STRING_TYPENAME
@ -145,12 +145,12 @@ namespace boost {
{ {
function_requires< function_requires<
FinderConcept<FinderT, FinderConcept<FinderT,
BOOST_STRING_TYPENAME range_iterator<RangeT>::type> >(); BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type> >();
iterator_range<BOOST_STRING_TYPENAME range_iterator<RangeT>::type> lit_input(as_literal(Input)); iterator_range<BOOST_STRING_TYPENAME range_iterator<RangeT>::type> lit_input(as_literal(Input));
typedef BOOST_STRING_TYPENAME typedef BOOST_STRING_TYPENAME
range_iterator<RangeT>::type input_iterator_type; range_result_iterator<RangeT>::type input_iterator_type;
typedef split_iterator<input_iterator_type> find_iterator_type; typedef split_iterator<input_iterator_type> find_iterator_type;
typedef detail::copy_iterator_rangeF< typedef detail::copy_iterator_rangeF<
BOOST_STRING_TYPENAME BOOST_STRING_TYPENAME

View File

@ -14,7 +14,7 @@
#include <boost/algorithm/string/config.hpp> #include <boost/algorithm/string/config.hpp>
#include <boost/algorithm/string/detail/sequence.hpp> #include <boost/algorithm/string/detail/sequence.hpp>
#include <boost/range/value_type.hpp> #include <boost/range/value_type.hpp>
#include <boost/range/as_literal.hpp>
/*! \file /*! \file
Defines join algorithm. Defines join algorithm.

View File

@ -17,7 +17,7 @@
#include <boost/range/iterator_range.hpp> #include <boost/range/iterator_range.hpp>
#include <boost/range/begin.hpp> #include <boost/range/begin.hpp>
#include <boost/range/end.hpp> #include <boost/range/end.hpp>
#include <boost/range/iterator.hpp> #include <boost/range/result_iterator.hpp>
#include <boost/range/as_literal.hpp> #include <boost/range/as_literal.hpp>
#include <boost/algorithm/string/find_format.hpp> #include <boost/algorithm/string/find_format.hpp>
@ -54,7 +54,7 @@ namespace boost {
typename CharT, typename CharT,
typename RegexTraitsT> typename RegexTraitsT>
inline iterator_range< inline iterator_range<
BOOST_STRING_TYPENAME range_iterator<RangeT>::type > BOOST_STRING_TYPENAME range_result_iterator<RangeT>::type >
find_regex( find_regex(
RangeT& Input, RangeT& Input,
const basic_regex<CharT, RegexTraitsT>& Rx, const basic_regex<CharT, RegexTraitsT>& Rx,
@ -634,12 +634,6 @@ namespace boost {
using algorithm::find_all_regex; using algorithm::find_all_regex;
using algorithm::split_regex; using algorithm::split_regex;
#ifndef BOOST_NO_FUNCTION_TEMPLATE_ORDERING
using algorithm::join_if;
#else // BOOST_NO_FUNCTION_TEMPLATE_ORDERING
using algorithm::join_if_regex;
#endif // BOOST_NO_FUNCTION_TEMPLATE_ORDERING
} // namespace boost } // namespace boost

View File

@ -31,7 +31,6 @@ doxygen autodoc
[ glob ../../../../boost/algorithm/string/trim.hpp ] [ glob ../../../../boost/algorithm/string/trim.hpp ]
[ glob ../../../../boost/algorithm/string/predicate.hpp ] [ glob ../../../../boost/algorithm/string/predicate.hpp ]
[ glob ../../../../boost/algorithm/string/split.hpp ] [ glob ../../../../boost/algorithm/string/split.hpp ]
[ glob ../../../../boost/algorithm/string/iter_find.hpp ]
[ glob ../../../../boost/algorithm/string/erase.hpp ] [ glob ../../../../boost/algorithm/string/erase.hpp ]
[ glob ../../../../boost/algorithm/string/join.hpp ] [ glob ../../../../boost/algorithm/string/join.hpp ]
[ glob ../../../../boost/algorithm/string/replace.hpp ] [ glob ../../../../boost/algorithm/string/replace.hpp ]

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.concept" last-revision="$Date$"> <section id="string_algo.concept" last-revision="$Date$">

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.credits" last-revision="$Date$"> <section id="string_algo.credits" last-revision="$Date$">

View File

@ -5,7 +5,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.design" last-revision="$Date$"> <section id="string_algo.design" last-revision="$Date$">
@ -217,7 +217,7 @@
</para> </para>
<para> <para>
For more information about the exception safety topics, follow this For more information about the exception safety topics, follow this
<ulink url="http://www.boost.org/more/generic_exception_safety.html">link</ulink> <ulink url="../../more/generic_exception_safety.html">link</ulink>
</para> </para>
</section> </section>
</section> </section>

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.env" last-revision="$Date$"> <section id="string_algo.env" last-revision="$Date$">

View File

@ -5,7 +5,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.intro" last-revision="$Date$"> <section id="string_algo.intro" last-revision="$Date$">

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.quickref" last-revision="$Date$"> <section id="string_algo.quickref" last-revision="$Date$">
@ -151,7 +151,7 @@
</row> </row>
<row> <row>
<entry><code>lexicographical_compare</code></entry> <entry><code>lexicographical_compare</code></entry>
<entry>Check if a string is lexicographically less then another one</entry> <entry>Check if a string is lexicographicaly less then another one</entry>
<entry> <entry>
<functionname>lexicographical_compare()</functionname> <functionname>lexicographical_compare()</functionname>
<sbr/> <sbr/>
@ -434,7 +434,7 @@
<functionname>find_all_regex()</functionname> <functionname>find_all_regex()</functionname>
</entry> </entry>
</row> </row>
<row> <row>
<entry>split</entry> <entry>split</entry>
<entry>Split input into parts</entry> <entry>Split input into parts</entry>
<entry> <entry>
@ -442,21 +442,7 @@
<sbr/> <sbr/>
<functionname>split_regex()</functionname> <functionname>split_regex()</functionname>
</entry> </entry>
</row> </row>
<row>
<entry>iter_find</entry>
<entry>Iteratively apply the finder to the input to find all matching substrings</entry>
<entry>
<functionname>iter_find()</functionname>
</entry>
</row>
<row>
<entry>iter_split</entry>
<entry>Use the finder to find matching substrings in the input and use them as separators to split the input into parts</entry>
<entry>
<functionname>iter_split()</functionname>
</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</table> </table>

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.rationale" last-revision="$Date$"> <section id="string_algo.rationale" last-revision="$Date$">

View File

@ -4,14 +4,10 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<section id="string_algo.release_notes" last-revision="$Date$"> <section id="string_algo.release_notes" last-revision="$Date$">
<using-namespace name="boost"/>
<using-namespace name="boost::algorithm"/>
<title>Release Notes</title> <title>Release Notes</title>
<itemizedlist> <itemizedlist>
@ -23,23 +19,5 @@
<para><emphasis role="bold">1.33</emphasis></para> <para><emphasis role="bold">1.33</emphasis></para>
<para>Internal version of collection traits removed, library adapted to Boost.Range</para> <para>Internal version of collection traits removed, library adapted to Boost.Range</para>
</listitem> </listitem>
<listitem>
<para><emphasis role="bold">1.34</emphasis></para>
<itemizedlist>
<listitem>
<functionname>lexicographical_compare()</functionname>
</listitem>
<listitem>
<functionname>join()</functionname> and <functionname>join_if()</functionname>
</listitem>
<listitem>
New comparison predicates <code>is_less</code>, <code>is_not_greater</code>
</listitem>
<listitem>
Negative indexes support (like Perl) in various algorihtms
(<code>*_head/tail</code>, <code>*_nth</code>).
</listitem>
</itemizedlist>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>

View File

@ -4,7 +4,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->
<library name="String Algorithms" dirname="algorithm/string" xmlns:xi="http://www.w3.org/2001/XInclude" <library name="String Algorithms" dirname="algorithm/string" xmlns:xi="http://www.w3.org/2001/XInclude"

View File

@ -5,7 +5,7 @@
<!-- Copyright (c) 2002-2006 Pavol Droba. <!-- Copyright (c) 2002-2006 Pavol Droba.
Subject to the Boost Software License, Version 1.0. Subject to the Boost Software License, Version 1.0.
(See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) (See accompanying file LICENSE-1.0 or http://www.boost.org/LICENSE-1.0)
--> -->