Compare commits

...

140 Commits

Author SHA1 Message Date
Marshall Clow af3258157d Merge changes to master 2026-03-03 10:52:34 -08:00
Marshall Clow 175f443ee8 Merge pull request #130 from Lastique/feature/remove_static_assert
Remove dependencies on Boost.StaticAssert
2026-02-05 17:25:23 -08:00
Andrey Semashev fee8399772 Remove dependencies on Boost.StaticAssert.
Boost.StaticAssert has been merged into Boost.Config, so remove
the dependency.
2026-01-22 20:00:01 +03:00
Marshall Clow 0edbfe8736 Merge pull request #128 from Flamefire/test-link-update
Update Link to regression test matrix in README
2025-08-25 08:42:25 -07:00
Alexander Grund 4de0842c47 Update Link to regression test matrix in README 2025-08-25 17:26:05 +02:00
Marshall Clow e8504e45a4 Merge pull request #124 from georgthegreat/patch-1
Add missing include
2025-06-25 20:43:28 -07:00
Marshall Clow dbd2ea4617 Merge pull request #125 from jeking3/fix_minmax_timer
Fix minmax_timer build, iteration count errors, and math errors
2025-06-25 20:43:14 -07:00
James E. King III c9e890bb85 Fix minmax_timer build 2025-06-23 21:06:23 -04:00
Yuriy Chernyshov 7012619c80 Add missing include 2025-05-05 18:01:59 +02:00
Marshall Clow 6eb48dd863 Merge pull request #112 from glywk/develop
Add is_blank() string functor classification
2025-04-13 13:46:42 -07:00
Marshall Clow 1395fe720c Merge pull request #123 from ahamez/develop
Fix documentation for  trim_all and trim_fill
2025-04-13 13:44:34 -07:00
Alexandre Hamez 35a55238a7 Fix documentation for trim_all and trim_fill 2025-01-13 11:20:30 +01:00
Marshall Clow 7f07838f8b Merge pull request #121 from grafikrobot/modular
Add support for modular build structure.
2024-09-03 11:59:17 -07:00
Rene Rivera bbfcdf1322 Change Boost Test build refs to work with both old and modular test lib targets. 2024-08-08 21:45:19 -05:00
Rene Rivera 5c8e6ce9ba Add timer dependency for minmax examples. 2024-07-30 08:03:47 -05:00
Rene Rivera 0c0e84b112 Adjust self dependencies as inter-lib deps no longer apply globally. 2024-07-27 10:28:38 -05:00
Rene Rivera 81e46297b5 Move inter-lib dependencies to a project variable and into the build targets. 2024-07-23 22:34:22 -05:00
Rene Rivera 8189606c93 Update copyright dates. 2024-07-20 22:52:03 -05:00
Rene Rivera c63c45a932 Bump B2 require to 5.2 2024-06-14 11:33:55 -05:00
Rene Rivera 1213b9fd1f Add requires-b2 check to top-level build file. 2024-05-05 09:00:00 -05:00
Rene Rivera b3b2ff4d0c Remove relative references to boost-root in Jamfiles. 2024-04-13 16:18:29 -05:00
Rene Rivera 14922e71c0 Avoid global references to boost-root. 2024-04-13 11:15:55 -05:00
Rene Rivera fcf95e504b Switch to library requirements instead of source. As source puts extra source in install targets. 2024-03-29 21:12:36 -05:00
Rene Rivera 6b1d2fc5ad Make the library modular usable. 2024-03-11 08:27:02 -05:00
Marshall Clow 32c5a6327c Bug fixes for the 1.83.0 release 2023-08-02 20:42:51 -07:00
glywk dc14b69189 Add negative is_blank predicate tests 2023-07-27 23:15:48 +02:00
glywk 61fa3e461f Merge branch 'boostorg:develop' into develop 2023-07-27 01:17:32 +02:00
jiayuehua 3401f0398f fix range-base gather algorithm 2023-07-27 01:04:04 +02:00
glywk 1d9706feb7 Add is_blank classifier 2023-01-21 00:42:52 +01:00
Marshall Clow 28dd87b90e Merge branch 'develop' 2022-11-09 21:21:12 -08:00
Marshall Clow 1c5f74ae25 Merge doc fixes to master 2022-07-06 08:22:07 -07:00
Marshall Clow 1cfd9592f7 New features for the 1.80.0 release 2022-06-29 14:03:25 -07:00
Marshall Clow 559835eaa5 Merge branch 'develop' 2022-06-23 21:09:11 -07:00
Marshall Clow 3b3bd8d3db Merge changes from develop for the 1.76.0 release 2021-04-07 09:28:02 -07:00
Marshall Clow ca77e55428 Bug fixes for 1/75/0 2020-11-17 15:45:39 -08:00
Marshall Clow 7f527f3c4d Merge changes from develop for the 1.74.0 release 2020-06-24 09:47:23 -07:00
Marshall Clow e59958cc4d Merge include + doc fixes to master for 1.72 release 2019-12-03 16:53:16 -08:00
Marshall Clow 44527f4c81 Algorithm: Merge example fixes master for 1.72.0 2019-12-03 07:48:39 -08:00
Marshall Clow 1b65b8de02 Merge bug fixes to master for 1.71 2019-07-10 15:14:08 -07:00
Marshall Clow 5af3e3b174 Merge bug fixes to master 2018-12-04 09:35:03 -08:00
Marshall Clow badf1b3f0c Merge broken links to master. NFC 2018-07-31 22:57:40 -07:00
Marshall Clow 4f9afb0682 Merge for the 1.68.0 beta 2018-07-04 11:27:27 -07:00
Marshall Clow 6d0126df8a Catch up with the changes; apply_permutation; constexpr, etc 2018-05-01 08:17:06 -07:00
Marshall Clow daef6d41c5 C++17 algorithms 2017-06-28 20:13:38 -07:00
Marshall Clow 055075aa61 Bug fixes and is_partititioned_XXX for the 1.65.0 release 2017-06-14 18:49:39 -07:00
Rene Rivera d029402f05 Add, and update, documentation build targets. 2016-10-10 11:24:26 -05:00
Marshall Clow 24d2cceb27 Fix a couple of test failures for the 1.62.0 release 2016-08-17 18:11:47 -07:00
Marshall Clow c5b41eba46 Merge to master for 1.62.0 release 2016-08-17 13:32:45 -07:00
Marshall Clow e5ea93bab1 Revert "Merge pull request #14 from nigels-com/merge-hex_lower"
This reverts commit 5412438df5, reversing
changes made to a09963bf93.
2016-03-07 15:43:55 -08:00
Marshall Clow 5412438df5 Merge pull request #14 from nigels-com/merge-hex_lower
Implement algorithm::hex_lower (Trac ticket #7064)
2016-03-07 14:57:34 -08:00
Nigel Stewart baa6eca18c Test coverage for algorithm::hex_lower, adapting existing coverage for algorithm::hex 2016-01-31 20:18:22 +10:00
Nigel Stewart 073eb62f64 Another overload of algorithm::hex_lower as lower-case alternative to algorithm::hex 2016-01-31 20:17:23 +10:00
Nigel Stewart cc1392cae6 Implement algorithm::hex_lower as lower-case alternative to algorithm::hex 2016-01-31 19:11:11 +10:00
Marshall Clow a09963bf93 Merge from develop; new feature 'power'; doc fixes; remove usage of C++11 versions of the algorithms 2015-03-18 21:31:53 -07:00
Marshall Clow cf249c090c Merge from develop: clean up is_permutation; fix clamp interface, and merge fix for bug #9335 as well 2014-03-31 12:03:45 -07:00
Marshall Clow 645be22fa7 Setting merge point for git merges 2014-03-23 14:33:14 -07:00
Stephen Kelly 28b12d7264 Algorithm: Remove obsolete MSVC version checks.
[SVN r86024]
2014-03-23 14:30:10 -07:00
Stephen Kelly 4d28d579e3 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifdef...#endif blocks.

[SVN r86243]
2014-03-23 14:27:55 -07:00
Stephen Kelly 5adab54486 Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
Process #ifdef...#else...#endif blocks.

[SVN r86246]
2014-03-23 14:27:55 -07:00
Marshall Clow 685a76f094 Merge a bunch of minor Boost.Algorithm changes to release
[SVN r86757]
2013-11-18 16:52:09 +00:00
Marshall Clow 5988a55b96 Minor merging; removing tabs from source files
[SVN r86323]
2013-10-15 15:44:55 +00:00
Marshall Clow 850fc02667 Merge bug fix for #9063 to release
[SVN r86218]
2013-10-09 18:09:40 +00:00
Marshall Clow 5279c8f061 Merge minor Boost.Algorithm doc fixes to the release branch
[SVN r86200]
2013-10-08 15:31:14 +00:00
Andrey Semashev 8b89b5ba27 Merged changes from trunk.
[SVN r85804]
2013-09-20 17:40:42 +00:00
Marshall Clow ca23b6f4f8 Merge bug fix to Release; Fixes #8546
[SVN r85134]
2013-07-23 16:48:27 +00:00
Marshall Clow 55cb3afefa Merge test fixup to release
[SVN r84825]
2013-06-18 14:48:37 +00:00
Marshall Clow beeedadba9 Merge doc changes from trunk
[SVN r84743]
2013-06-11 16:21:22 +00:00
Marshall Clow 1a70166889 Merge c++14 changes to release
[SVN r84415]
2013-05-22 15:10:49 +00:00
Marshall Clow 63da6f5713 Merge Algorithm changes to release; hex code cleanups; gather iterator requirements; copy_while and copy_until interface changes
[SVN r83347]
2013-03-07 15:37:08 +00:00
Marshall Clow 2381d0bdac Merge bug fix to release; Fixes #7989
[SVN r83193]
2013-02-27 23:37:21 +00:00
Marshall Clow 40b5941652 One more failed merge
[SVN r83192]
2013-02-27 23:36:16 +00:00
Marshall Clow 00dfda98b2 more merge failures
[SVN r83171]
2013-02-26 22:05:42 +00:00
Marshall Clow 52eef989da Clean up merge failure
[SVN r83170]
2013-02-26 22:03:44 +00:00
Marshall Clow 8132864884 Merged boost::algorithm::gather and updated tests for Utility, Algorithm and Utility libraries
[SVN r83154]
2013-02-25 18:43:26 +00:00
Marshall Clow 6e098b27aa Merge Michael Morin's typo fixes for Boost.Algorithm to release; no functionality change.
[SVN r82240]
2012-12-28 18:19:25 +00:00
Marshall Clow 60010b4165 Merge bug fix and test to release; Fixes #7784
[SVN r82238]
2012-12-28 17:39:08 +00:00
Marshall Clow 1660dc9d48 merge bug fix for minmax_element to release; Fixes #7752
[SVN r82049]
2012-12-17 16:02:38 +00:00
Marshall Clow 5ae4f848b3 Remove tabs from Boost.Algorithm tests.
[SVN r81857]
2012-12-11 16:56:30 +00:00
Marshall Clow fe3e0bb9c4 merge K-M-P doc updates to release; Fixes #7656
[SVN r81840]
2012-12-10 21:13:08 +00:00
Marshall Clow 311e169376 Merge extra tests for Boost.StringAlgo.Split to release
[SVN r81835]
2012-12-10 20:10:12 +00:00
Marshall Clow 3dddfa1930 Merge from trunk; Fixes #7346
[SVN r81832]
2012-12-10 19:23:54 +00:00
Marshall Clow be6d8f9665 Merge URL fix for boyer-moore; Fixes #7781
[SVN r81825]
2012-12-10 15:40:23 +00:00
Marshall Clow bced4ed8dd Merge doc fix for minmax; Fixes #7751
[SVN r81823]
2012-12-10 15:28:36 +00:00
Marshall Clow 1b57e905ab Merge bug fixes to release; Fixes #7339
[SVN r80808]
2012-10-01 15:31:51 +00:00
Marshall Clow 29bd9f53d9 Merge bug fixes to release; Fixes #7399 Fixes #7400 Fixes #7401
[SVN r80670]
2012-09-23 14:56:41 +00:00
Marshall Clow 6341cfb1a6 Merge doc typo corrections to release; fixes #6595; fixes #7182
[SVN r80057]
2012-08-16 05:16:42 +00:00
Marshall Clow 7f4acd6170 Merged typos in comments to release; no functionality; Fixes #7210
[SVN r79929]
2012-08-08 16:30:33 +00:00
Marshall Clow 314f6dcfe0 Merge changes from [79588] to Release; fixes a unhex bug
[SVN r79604]
2012-07-19 15:12:33 +00:00
Marshall Clow 167aa6e31c Get rid of tabs in Boost.Algorithm tests
[SVN r79603]
2012-07-19 15:00:27 +00:00
Marshall Clow d228e91494 Merge Boost.Algorithm changes to release; Fixes #7104
[SVN r79538]
2012-07-15 16:28:35 +00:00
Marshall Clow 9cc573fbd0 Fixed errors in the doxygen comments. Fixes #7083.
[SVN r79285]
2012-07-05 15:30:17 +00:00
Marshall Clow 28a7d3eb4b Merge doc changes to release; fixes #7073
[SVN r79264]
2012-07-04 16:15:35 +00:00
Daniel James 883cce61a8 Merge algorithm's html redirect.
[SVN r78855]
2012-06-07 20:05:17 +00:00
Marshall Clow 96d4708367 Merge Boost.Algorithm inspection report changes to release. No functionality change
[SVN r78689]
2012-05-27 15:45:18 +00:00
Marshall Clow 563fe27a59 Merged changes for Boost.Algorithm to release; Fixes #6596; Fixes #6689; Fixes #3215; Fixes #6840
[SVN r78557]
2012-05-23 16:25:48 +00:00
Marshall Clow 76cd99ed53 Merge Boost.Algorithm to release branch
[SVN r78025]
2012-04-16 18:54:41 +00:00
Marshall Clow 0f2399fef0 Merge changes to release; fixes #5589
[SVN r76527]
2012-01-15 16:49:25 +00:00
Marshall Clow 044d667e79 Merge changes to release; fixes #3634
[SVN r76522]
2012-01-15 16:05:55 +00:00
Marshall Clow be9da63894 Merge fix for #4937 to release
[SVN r76267]
2012-01-01 21:18:47 +00:00
Marshall Clow 787c94bc53 Merge Change 68161 to release
[SVN r76266]
2012-01-01 21:17:02 +00:00
Marshall Clow e87ce37b34 Merge Change 76213 to release; Fixes #4811
[SVN r76265]
2012-01-01 21:12:58 +00:00
Pavol Droba 199a89a1e9 merged from trunk
[SVN r72380]
2011-06-03 21:13:37 +00:00
Pavol Droba 01492a93c6 trunk changes merged
[SVN r67922]
2011-01-10 19:36:38 +00:00
Daniel James 50703b8c97 Merge documentation fixes to release.
[SVN r66285]
2010-10-30 17:34:45 +00:00
Jürgen Hunold 0f8d556130 Merge r65004 from trunk
Fix #4551,#4553,#4575 by removing unused parameter.



[SVN r65168]
2010-09-01 16:18:07 +00:00
Pavol Droba bbd3220a1e Merging changes from trunk
[SVN r63824]
2010-07-10 20:29:03 +00:00
Hartmut Kaiser 9068069106 Spirit: merging from trunk upto rev. 61489
[SVN r63640]
2010-07-04 22:38:38 +00:00
Daniel James a37af3c81e Merge documentation fixes.
* Use `doc/src/*.css` instead of `doc/html/*.css`.
* Remove wiki and people directories.
* Some documentation fixes.
* Left out `minimal.css` changes and boostbook changes because of clashes.


[SVN r63347]
2010-06-26 12:30:09 +00:00
Steven Watanabe f5885c6fb0 Merge minmax from the trunk
[SVN r62088]
2010-05-18 17:53:36 +00:00
Daniel James d45bb3545e Merge some link fixes and release notes.
[SVN r61474]
2010-04-21 23:00:35 +00:00
Troy D. Straszheim d735b9fa1e rm cmake from the release branch before it goes out broken. Policy dictates that you never commit to release, you commit to trunk and merge to release.
[SVN r56941]
2009-10-17 01:10:45 +00:00
Pavol Droba 62ec675581 Merged changes from trunk
[SVN r56176]
2009-09-13 19:10:55 +00:00
Troy D. Straszheim e7cd4da67b Add basic copyright/license to keep cmake out of the inspection report
[SVN r55095]
2009-07-22 21:51:01 +00:00
Steven Watanabe 6076f5a18e Merge [53520] from the trunk
[SVN r53909]
2009-06-14 22:56:08 +00:00
Steven Watanabe 60cd5a0500 Merge [53062] from the trunk
[SVN r53270]
2009-05-26 01:17:07 +00:00
Jeremiah Willcock c33dad924d Fixed almost all tab and min/max issues found by inspect tool
[SVN r53142]
2009-05-20 19:41:20 +00:00
Daniel James 2f2935f07e Merged revisions 45283,48266 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r45283 | danieljames | 2008-05-11 14:49:20 +0100 (Sun, 11 May 2008) | 1 line
  
  Quote href values - our tools don't support unquoted values.
........
  r48266 | danieljames | 2008-08-20 20:32:23 +0100 (Wed, 20 Aug 2008) | 1 line
  
  Fix the link to the limits documentation.
........


[SVN r51902]
2009-03-22 17:30:02 +00:00
John Maddock 3cbaafc27f Merge PDF build changes from Trunk.
[SVN r51417]
2009-02-23 18:39:32 +00:00
Steven Watanabe c067b348bf Merge [51045] from the trunk
[SVN r51226]
2009-02-12 18:47:06 +00:00
Troy D. Straszheim c33935fa1f merge of cmake build files from trunk per beman
[SVN r50756]
2009-01-24 18:57:20 +00:00
Pavol Droba 98a8b08afb Memory management fixes for is_any_of predicate merged from the trunk
[SVN r49172]
2008-10-07 21:59:57 +00:00
Pavol Droba fc0f3dcffc Cummulative merge of updates from the main trunk
[SVN r46505]
2008-06-19 12:07:24 +00:00
Daniel James 822636418b Merged revisions 43211,43214-43219,43222-43225,43227-43238,43242,43244-43245,43249-43250,43257-43259,43261,43263,43265,43267-43268,43270-43271,43273,43275-43279,43284-43289,43291,43295,43297-43298,43304-43305,43307,43313,43315,43324,43326-43327,43331,43333,43339-43343,43345,43348,43350,43352-43353,43355-43356,43358,43360,43366-43367,43369-43370,43372-43376,43378-43389,43394,43396-43398,43400-43401,43403-43404,43406-43408,43413-43415,43417-43418,43420,43422-43423 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r43417 | danieljames | 2008-02-26 22:04:55 +0000 (Tue, 26 Feb 2008) | 2 lines
  
  Fix a link to Boost.Bimap.
........
  r43418 | danieljames | 2008-02-26 22:07:25 +0000 (Tue, 26 Feb 2008) | 2 lines
  
  Change another link that's no longer in the repository to link to the website.
........
  r43422 | danieljames | 2008-02-27 18:51:14 +0000 (Wed, 27 Feb 2008) | 1 line
  
  Fix broken copyright urls. Fixes #1573.
........
  r43423 | danieljames | 2008-02-27 19:22:01 +0000 (Wed, 27 Feb 2008) | 1 line
  
  Fix incorrect links to copyright of the form 'http:#www.boost.org
........


[SVN r43425]
2008-02-27 20:00:24 +00:00
Daniel James 352e16aade Merged revisions 43206,43208-43213 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r43206 | danieljames | 2008-02-10 09:55:03 +0000 (Sun, 10 Feb 2008) | 1 line
  
  Fix some broken links.
........
  r43209 | danieljames | 2008-02-10 14:56:22 +0000 (Sun, 10 Feb 2008) | 1 line
  
  Link to people pages on the website, as they've been removed from the download.
........
  r43210 | danieljames | 2008-02-10 15:02:17 +0000 (Sun, 10 Feb 2008) | 1 line
  
  Point links to the pages that used to be in 'more' to the site.
........
  r43212 | danieljames | 2008-02-10 16:10:16 +0000 (Sun, 10 Feb 2008) | 1 line
  
  Fix links on the home page as well.
........
  r43213 | danieljames | 2008-02-10 16:21:22 +0000 (Sun, 10 Feb 2008) | 1 line
  
  Generated documentation which is no longer generated.
........


[SVN r43214]
2008-02-10 16:39:38 +00:00
Beman Dawes 89c76ea1bb Full merge from trunk at revision 41356 of entire boost-root tree.
[SVN r41370]
2007-11-25 18:38:02 +00:00
Beman Dawes 50b5726a6f Full merge from trunk at revision 41356 of entire boost-root tree.
[SVN r41369]
2007-11-25 18:07:19 +00:00
Beman Dawes d4b95734dd Starting point for releases
[SVN r39706]
2007-10-05 14:25:06 +00:00
nobody 05af96f84c This commit was manufactured by cvs2svn to create tag
'Version_1_34_1'.

[SVN r38286]
2007-07-24 19:28:14 +00:00
Pavol Droba 5bdbb2b308 Documentation for iter_find/iter_split added
[SVN r37842]
2007-06-01 13:50:51 +00:00
Pavol Droba 1a02969303 release notes - fix the incorrect functionname spelling
[SVN r37533]
2007-04-29 07:04:58 +00:00
Pavol Droba 6309379618 release notes for 1.34 added
[SVN r37532]
2007-04-29 07:02:21 +00:00
Pavol Droba 37581bac55 documentation typo fixed
[SVN r36843]
2007-01-30 07:59:28 +00:00
Beman Dawes a71a4ed5b1 Merged copyright and license addition
[SVN r35907]
2006-11-07 19:27:00 +00:00
Rene Rivera c509c3fbad Remove obsolete Boost.Build v1 files.
[SVN r35880]
2006-11-06 17:10:46 +00:00
Pavol Droba d8683f2498 unused parameters removed
[SVN r35753]
2006-10-27 17:37:37 +00:00
Pavol Droba 7c0101aa51 Copyright added to index.html
unneeded file removed


[SVN r34908]
2006-08-20 20:14:48 +00:00
Pavol Droba 6f3e85528f License added to the xml documentation files
[SVN r34894]
2006-08-16 07:10:48 +00:00
Pavol Droba 8af639b7cf missing 'using' directives for join_if and join_if_regex added
missing #include <boost/algorithm/string/join.hpp> added to string_algo.hpp


[SVN r34122]
2006-05-30 19:13:08 +00:00
Pavol Droba d9bc7e800b Merged patch from main trunk for borland by Nicola Musatti
[SVN r33723]
2006-04-17 17:16:11 +00:00
nobody b4ed9beb90 This commit was manufactured by cvs2svn to create branch 'RC_1_34_0'.
[SVN r33417]
2006-03-21 02:26:31 +00:00
18 changed files with 162 additions and 92 deletions
-1
View File
@@ -26,7 +26,6 @@ target_link_libraries(boost_algorithm
Boost::mpl
Boost::range
Boost::regex
Boost::static_assert
Boost::throw_exception
Boost::tuple
Boost::type_traits
-11
View File
@@ -1,11 +0,0 @@
# Boost.Algorithm Library Jamfile
#
# Copyright (c) 2018 James E. King III
#
# Use, modification, and distribution are subject to the
# Boost Software License, Version 1.0. (See accompanying file
# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
# please order by name to ease maintenance
build-project example ;
build-project test ;
+2 -2
View File
@@ -13,8 +13,8 @@ Distributed under the [Boost Software License, Version 1.0](http://www.boost.org
Branch | Travis | Appveyor | Coverity Scan | codecov.io | Deps | Docs | Tests |
:-------------: | ------ | -------- | ------------- | ---------- | ---- | ---- | ----- |
[`master`](https://github.com/boostorg/algorithm/tree/master) | [![Build Status](https://travis-ci.org/boostorg/algorithm.svg?branch=master)](https://travis-ci.org/boostorg/algorithm) | [![Build status](https://ci.appveyor.com/api/projects/status/FIXME/branch/master?svg=true)](https://ci.appveyor.com/project/USER/PROJECT/branch/master) | [![Coverity Scan Build Status](https://scan.coverity.com/projects/99999/badge.svg)](https://scan.coverity.com/projects/boostorg-algorithm) | [![codecov](https://codecov.io/gh/boostorg/algorithm/branch/master/graph/badge.svg)](https://codecov.io/gh/boostorg/algorithm/branch/master)| [![Deps](https://img.shields.io/badge/deps-master-brightgreen.svg)](https://pdimov.github.io/boostdep-report/master/algorithm.html) | [![Documentation](https://img.shields.io/badge/docs-master-brightgreen.svg)](http://www.boost.org/doc/libs/master/doc/html/algorithm.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-master-brightgreen.svg)](http://www.boost.org/development/tests/master/developer/algorithm.html)
[`develop`](https://github.com/boostorg/algorithm/tree/develop) | [![Build Status](https://travis-ci.org/boostorg/algorithm.svg?branch=develop)](https://travis-ci.org/boostorg/algorithm) | [![Build status](https://ci.appveyor.com/api/projects/status/FIXME/branch/develop?svg=true)](https://ci.appveyor.com/project/USER/PROJECT/branch/develop) | [![Coverity Scan Build Status](https://scan.coverity.com/projects/99999/badge.svg)](https://scan.coverity.com/projects/boostorg-algorithm) | [![codecov](https://codecov.io/gh/boostorg/algorithm/branch/develop/graph/badge.svg)](https://codecov.io/gh/boostorg/algorithm/branch/develop) | [![Deps](https://img.shields.io/badge/deps-develop-brightgreen.svg)](https://pdimov.github.io/boostdep-report/develop/algorithm.html) | [![Documentation](https://img.shields.io/badge/docs-develop-brightgreen.svg)](http://www.boost.org/doc/libs/develop/doc/html/algorithm.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-develop-brightgreen.svg)](http://www.boost.org/development/tests/develop/developer/algorithm.html)
[`master`](https://github.com/boostorg/algorithm/tree/master) | [![Build Status](https://travis-ci.org/boostorg/algorithm.svg?branch=master)](https://travis-ci.org/boostorg/algorithm) | [![Build status](https://ci.appveyor.com/api/projects/status/FIXME/branch/master?svg=true)](https://ci.appveyor.com/project/USER/PROJECT/branch/master) | [![Coverity Scan Build Status](https://scan.coverity.com/projects/99999/badge.svg)](https://scan.coverity.com/projects/boostorg-algorithm) | [![codecov](https://codecov.io/gh/boostorg/algorithm/branch/master/graph/badge.svg)](https://codecov.io/gh/boostorg/algorithm/branch/master)| [![Deps](https://img.shields.io/badge/deps-master-brightgreen.svg)](https://pdimov.github.io/boostdep-report/master/algorithm.html) | [![Documentation](https://img.shields.io/badge/docs-master-brightgreen.svg)](http://www.boost.org/doc/libs/master/doc/html/algorithm.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-master-brightgreen.svg)](https://regression.boost.io/master/developer/algorithm.html)
[`develop`](https://github.com/boostorg/algorithm/tree/develop) | [![Build Status](https://travis-ci.org/boostorg/algorithm.svg?branch=develop)](https://travis-ci.org/boostorg/algorithm) | [![Build status](https://ci.appveyor.com/api/projects/status/FIXME/branch/develop?svg=true)](https://ci.appveyor.com/project/USER/PROJECT/branch/develop) | [![Coverity Scan Build Status](https://scan.coverity.com/projects/99999/badge.svg)](https://scan.coverity.com/projects/boostorg-algorithm) | [![codecov](https://codecov.io/gh/boostorg/algorithm/branch/develop/graph/badge.svg)](https://codecov.io/gh/boostorg/algorithm/branch/develop) | [![Deps](https://img.shields.io/badge/deps-develop-brightgreen.svg)](https://pdimov.github.io/boostdep-report/develop/algorithm.html) | [![Documentation](https://img.shields.io/badge/docs-develop-brightgreen.svg)](http://www.boost.org/doc/libs/develop/doc/html/algorithm.html) | [![Enter the Matrix](https://img.shields.io/badge/matrix-develop-brightgreen.svg)](https://regression.boost.io/develop/developer/algorithm.html)
### Directories
+41
View File
@@ -0,0 +1,41 @@
# Copyright René Ferdinand Rivera Morell 2023-2024
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
require-b2 5.2 ;
constant boost_dependencies :
/boost/array//boost_array
/boost/assert//boost_assert
/boost/bind//boost_bind
/boost/concept_check//boost_concept_check
/boost/config//boost_config
/boost/core//boost_core
/boost/exception//boost_exception
/boost/function//boost_function
/boost/iterator//boost_iterator
/boost/mpl//boost_mpl
/boost/range//boost_range
/boost/regex//boost_regex
/boost/throw_exception//boost_throw_exception
/boost/tuple//boost_tuple
/boost/type_traits//boost_type_traits
/boost/unordered//boost_unordered ;
project /boost/algorithm
: common-requirements
<include>include
;
explicit
[ alias boost_algorithm : : : : <library>$(boost_dependencies) ]
[ alias all : boost_algorithm test
example
minmax/example minmax/test
string/example string/test
]
;
call-if : boost-library algorithm
;
+10 -10
View File
@@ -16,18 +16,18 @@ using quickbook ;
using doxygen ;
using boostbook ;
doxygen autodoc
:
[ glob ../../../boost/algorithm/*.hpp
../../../boost/algorithm/searching/*.hpp
../../../boost/algorithm/cxx11/*.hpp
../../../boost/algorithm/cxx14/*.hpp
../../../boost/algorithm/cxx17/*.hpp
doxygen autodoc
:
[ glob ../include/boost/algorithm/*.hpp
../include/boost/algorithm/searching/*.hpp
../include/boost/algorithm/cxx11/*.hpp
../include/boost/algorithm/cxx14/*.hpp
../include/boost/algorithm/cxx17/*.hpp
]
:
:
<doxygen:param>"PREDEFINED=\"BOOST_ALGORITHM_DOXYGEN=1\""
<doxygen:param>WARNINGS=YES # Default NO, but useful to see warnings, especially in a logfile.
;
;
xml algorithm : algorithm.qbk ;
@@ -36,7 +36,7 @@ boostbook standalone
:
algorithm
:
<dependency>autodoc
<dependency>autodoc
<xsl:param>boost.root=../../../..
<xsl:param>"boost.doxygen.reftitle=Boost.Algorithms C++ Reference"
<xsl:param>chapter.autolabel=0
+2 -2
View File
@@ -8,9 +8,9 @@
# See http://www.boost.org for updates, documentation, and revision history.
project /boost/algorithm/example
project
: requirements
<include>../../../
<library>/boost/algorithm//boost_algorithm
<optimization>speed
<toolset>msvc:<define>_SCL_SECURE_NO_WARNINGS
<toolset>msvc:<define>NOMINMAX
@@ -10,6 +10,7 @@
#ifndef BOOST_ALGORITHM_BOYER_MOORE_SEARCH_HPP
#define BOOST_ALGORITHM_BOYER_MOORE_SEARCH_HPP
#include <algorithm> // for std::reverse_copy
#include <iterator> // for std::iterator_traits
#include <boost/config.hpp>
@@ -85,6 +85,22 @@ namespace boost {
return detail::is_classifiedF(std::ctype_base::alpha, Loc);
}
#ifndef BOOST_NO_CXX11
//! is_blank predicate
/*!
Construct the \c is_classified predicate for the \c ctype_base::blank category.
\param Loc A locale used for classification
\return An instance of the \c is_classified predicate
\since c++11
*/
inline detail::is_classifiedF
is_blank(const std::locale& Loc=std::locale())
{
return detail::is_classifiedF(std::ctype_base::blank, Loc);
}
#endif
//! is_cntrl predicate
/*!
Construct the \c is_classified predicate for the \c ctype_base::cntrl category.
@@ -294,6 +310,9 @@ namespace boost {
// pull names to the boost namespace
using algorithm::is_classified;
using algorithm::is_space;
#ifndef BOOST_NO_CXX11
using algorithm::is_blank;
#endif
using algorithm::is_alnum;
using algorithm::is_alpha;
using algorithm::is_cntrl;
@@ -108,7 +108,6 @@ namespace boost {
\param Input An input sequence
\param Loc A locale used for 'space' classification
\return A trimmed copy of the input
*/
template<typename SequenceT>
inline void trim_all(SequenceT& Input, const std::locale& Loc =std::locale())
@@ -191,7 +190,6 @@ namespace boost {
\param Input An input sequence
\param Fill A string used to fill the inner spaces
\param Loc A locale used for 'space' classification
\return A trimmed copy of the input
*/
template<typename SequenceT, typename RangeT>
inline void trim_fill(SequenceT& Input, const RangeT& Fill, const std::locale& Loc =std::locale())
+5
View File
@@ -7,6 +7,11 @@
# http://www.boost.org/LICENSE_1_0.txt)
#
project
: requirements
<library>/boost/algorithm//boost_algorithm
<library>/boost/timer//boost_timer ;
exe minmax_ex : minmax_ex.cpp ;
exe minmax_timer : minmax_timer.cpp ;
+18 -19
View File
@@ -15,8 +15,10 @@
// What's the proper BOOST_ flag for <iomanip.h> vs <ios>
#include <iomanip>
#include <boost/timer.hpp>
#include <boost/algorithm/minmax.hpp>
#include <boost/algorithm/minmax_element.hpp>
#include <boost/iterator/filter_iterator.hpp>
#include <boost/timer/timer.hpp>
template <class T1, class T2>
void tie(std::pair<T1, T2> p, T1& min, T2& max)
@@ -56,17 +58,19 @@ inline int opt_boost_minmax_count(int n) {
int repeats = 10;
#define TIMER( n, cmd , cmdname ) \
t.restart(); \
for (int i=0; i<repeats; ++i) { cmd ; } \
t.start(); \
for (int i=0; i<n*repeats; ++i) { cmd ; } \
t.stop(); \
std::cout << " " << std::setprecision(4) \
<< (double)n*repeats/t.elapsed()/1.0E6 \
<< 1e3 * (double)(n*repeats) / (double)t.elapsed().wall \
<< "M items/sec " << cmdname << "\n"
#define CTIMER( n, cmd , cmdname, count, opt ) \
t.restart(); lc.reset(); \
for (int i=0; i<repeats; ++i) { cmd ; } \
t.start(); lc.reset(); \
for (int i=0; i<n*repeats; ++i) { cmd ; } \
t.stop(); \
std::cout << " " << std::setprecision(4) \
<< (double)n*repeats/t.elapsed()/1.0E6 \
<< 1e3 * (double)(n*repeats) / (double)t.elapsed().wall \
<< "M items/sec " << cmdname \
<< " ("<< (count)/repeats << " vs " << opt << ")\n"
@@ -74,7 +78,7 @@ template <class CIterator>
void test_minmax_element(CIterator first, CIterator last, int n, char* name)
{
typedef typename std::iterator_traits<CIterator>::value_type vtype;
boost::timer t;
boost::timer::cpu_timer t;
std::cout << " ON " << name << " WITH OPERATOR<()\n";
TIMER( n, std::min_element(first, last),
@@ -99,15 +103,11 @@ void test_minmax_element(CIterator first, CIterator last, int n, char* name)
"boost::last_min_last_max_element" << name << " ");
#define pred std::bind2nd( std::greater<vtype>(), vtype(10) )
TIMER( n, boost::min_element_if(first, last, pred),
"boost::min_element_if" << name << "");
TIMER( n, boost::max_element_if(first, last, pred),
"boost::max_element_if" << name << "");
TIMER( n, std::min_element(boost::make_filter_iterator(first, last, pred),
boost::make_filter_iterator(last, last, pred)),
TIMER( n, std::min_element(boost::make_filter_iterator(pred, first, last),
boost::make_filter_iterator(pred, last, last)),
"std::min_element_with_filter_iterator" << name << "");
TIMER( n, std::max_element(boost::make_filter_iterator(first, last, pred),
boost::make_filter_iterator(last, last, pred)),
TIMER( n, std::max_element(boost::make_filter_iterator(pred, first, last),
boost::make_filter_iterator(pred, last, last)),
"std::max_element_if_with_filter_iterator" << name << "");
#undef pred
@@ -199,10 +199,9 @@ void test(int n)
test_range(first, last, n);
}
int
main(char argc, char** argv)
int main(int argc, char** argv)
{
int n = 100;
int n = 1000;
if (argc > 1) n = atoi(argv[1]);
if (argc > 2) repeats = atoi(argv[2]);
+5 -3
View File
@@ -9,17 +9,19 @@
import testing ;
project : requirements <library>/boost/algorithm//boost_algorithm ;
alias unit_test_framework
: # sources
/boost//unit_test_framework
;
/boost/test//boost_unit_test_framework
;
{
test-suite algorithm/minmax
: [ run minmax_element_test.cpp unit_test_framework
: : : : minmax_element ]
[ run minmax_test.cpp unit_test_framework
: : : : minmax ]
: : : : minmax ]
;
}
+28 -28
View File
@@ -10,40 +10,40 @@
import toolset ;
toolset.using doxygen ;
boostbook string_algo : string_algo.xml autodoc
boostbook string_algo : string_algo.xml autodoc
:
<xsl:param>boost.root=../../../../..
<format>pdf:<xsl:param>boost.url.prefix=http://www.boost.org/doc/libs/release/doc/html
;
doxygen autodoc
:
[ glob ../../../../boost/algorithm/string.hpp ]
[ glob ../../../../boost/algorithm/string_regex.hpp ]
:
[ glob ../../include/boost/algorithm/string.hpp ]
[ glob ../../include/boost/algorithm/string_regex.hpp ]
[ glob ../../../../boost/algorithm/string/classification.hpp ]
[ glob ../../../../boost/algorithm/string/iterator_range.hpp ]
[ glob ../../../../boost/algorithm/string/sequence_traits.hpp ]
[ glob ../../../../boost/algorithm/string/std_containers_traits.hpp ]
[ glob ../../../../boost/algorithm/string/concept.hpp ]
[ glob ../../../../boost/algorithm/string/compare.hpp ]
[ glob ../../../../boost/algorithm/string/constants.hpp ]
[ glob ../../../../boost/algorithm/string/case_conv.hpp ]
[ glob ../../../../boost/algorithm/string/find.hpp ]
[ glob ../../../../boost/algorithm/string/finder.hpp ]
[ glob ../../../../boost/algorithm/string/find_iterator.hpp ]
[ glob ../../../../boost/algorithm/string/trim.hpp ]
[ glob ../../../../boost/algorithm/string/predicate.hpp ]
[ glob ../../../../boost/algorithm/string/split.hpp ]
[ glob ../../../../boost/algorithm/string/iter_find.hpp ]
[ glob ../../../../boost/algorithm/string/erase.hpp ]
[ glob ../../../../boost/algorithm/string/join.hpp ]
[ glob ../../../../boost/algorithm/string/replace.hpp ]
[ glob ../../../../boost/algorithm/string/find_format.hpp ]
[ glob ../../../../boost/algorithm/string/formatter.hpp ]
[ glob ../../../../boost/algorithm/string/regex.hpp ]
[ glob ../../../../boost/algorithm/string/regex_find_format.hpp ]
[ glob ../../../../boost/algorithm/string/trim_all.hpp ]
[ glob ../../include/boost/algorithm/string/classification.hpp ]
[ glob ../../include/boost/algorithm/string/iterator_range.hpp ]
[ glob ../../include/boost/algorithm/string/sequence_traits.hpp ]
[ glob ../../include/boost/algorithm/string/std_containers_traits.hpp ]
[ glob ../../include/boost/algorithm/string/concept.hpp ]
[ glob ../../include/boost/algorithm/string/compare.hpp ]
[ glob ../../include/boost/algorithm/string/constants.hpp ]
[ glob ../../include/boost/algorithm/string/case_conv.hpp ]
[ glob ../../include/boost/algorithm/string/find.hpp ]
[ glob ../../include/boost/algorithm/string/finder.hpp ]
[ glob ../../include/boost/algorithm/string/find_iterator.hpp ]
[ glob ../../include/boost/algorithm/string/trim.hpp ]
[ glob ../../include/boost/algorithm/string/predicate.hpp ]
[ glob ../../include/boost/algorithm/string/split.hpp ]
[ glob ../../include/boost/algorithm/string/iter_find.hpp ]
[ glob ../../include/boost/algorithm/string/erase.hpp ]
[ glob ../../include/boost/algorithm/string/join.hpp ]
[ glob ../../include/boost/algorithm/string/replace.hpp ]
[ glob ../../include/boost/algorithm/string/find_format.hpp ]
[ glob ../../include/boost/algorithm/string/formatter.hpp ]
[ glob ../../include/boost/algorithm/string/regex.hpp ]
[ glob ../../include/boost/algorithm/string/regex_find_format.hpp ]
[ glob ../../include/boost/algorithm/string/trim_all.hpp ]
:
<doxygen:param>HIDE_UNDOC_MEMBERS=YES
<doxygen:param>EXTRACT_PRIVATE=NO
@@ -53,7 +53,7 @@ doxygen autodoc
<doxygen:param>SEARCH_INCLUDES=YES
<doxygen:param>PREDEFINED="BOOST_STRING_TYPENAME=typename \"BOOST_STATIC_CONSTANT(type,var)=static const type var;\""
;
+7
View File
@@ -667,6 +667,13 @@
<functionname>is_space()</functionname>
</entry>
</row>
<row>
<entry>is_blank</entry>
<entry>Recognize blanks</entry>
<entry>
<functionname>is_blank()</functionname>
</entry>
</row>
<row>
<entry>is_alnum</entry>
<entry>Recognize alphanumeric characters</entry>
+1
View File
@@ -7,6 +7,7 @@
#
# See http://www.boost.org for updates, documentation, and revision history.
project : requirements <library>/boost/algorithm//boost_algorithm ;
exe conv_example : conv_example.cpp ;
exe predicate_example : predicate_example.cpp ;
+13 -11
View File
@@ -9,31 +9,33 @@
import testing ;
project : requirements <library>/boost/algorithm//boost_algorithm ;
alias unit_test_framework
: # sources
/boost//unit_test_framework
;
/boost/test//boost_unit_test_framework
;
test-suite algorithm/string
: [ run
: [ run
trim_test.cpp unit_test_framework
: :
:
: trim
]
[ run
[ run
conv_test.cpp unit_test_framework
: :
:
: conv
]
[ run
[ run
predicate_test.cpp unit_test_framework
: :
:
: predicate
]
[ run
[ run
find_test.cpp unit_test_framework
: :
:
@@ -51,23 +53,23 @@ test-suite algorithm/string
:
: join
]
[ run
[ run
replace_test.cpp unit_test_framework
: :
:
: replace
]
[ run
[ run
regex_test.cpp unit_test_framework
../../../regex/build//boost_regex
: :
:
:
: regex
]
[ run
[ run
find_format_test.cpp unit_test_framework
: :
:
:
: find_format
]
;
+6 -1
View File
@@ -138,7 +138,12 @@ void classification_test()
TEST_CLASS( is_any_of( string("abc") ), "aaabbcc", "aaxb" );
TEST_CLASS( is_any_of( "abc" ), "aaabbcc", "aaxb" );
TEST_CLASS( is_from_range( 'a', 'c' ), "aaabbcc", "aaxb" );
#ifndef BOOST_NO_CXX11
TEST_CLASS( is_blank(), " \t", "\t \n\r" );
TEST_CLASS( !is_blank(), "abc\n\v\f\r", "a x\t" );
#endif
TEST_CLASS( !is_classified(std::ctype_base::space), "...", "..\n\r\t " );
TEST_CLASS( ( !is_any_of("abc") && is_from_range('a','e') ) || is_space(), "d e", "abcde" );
+4 -2
View File
@@ -9,9 +9,11 @@
import testing ;
project : requirements <library>/boost/algorithm//boost_algorithm ;
alias unit_test_framework
: # sources
/boost//unit_test_framework
/boost/test//boost_unit_test_framework
;
@@ -85,7 +87,7 @@ alias unit_test_framework
# Is_partitioned_until tests
[ run is_partitioned_until_test.cpp unit_test_framework : : : : is_partitioned_until_test ]
# Apply_permutation tests
[ run apply_permutation_test.cpp unit_test_framework : : : : apply_permutation_test ]
# Find tests