Commit Graph

52 Commits

Author SHA1 Message Date
Peter Dimov
7efe3c68f6 Fix msvc-10.0, msvc-11.0 failures in ref_unwrapped tests 2018-09-24 02:21:55 +03:00
Jean-Philippe DUFRAIGNE
4a729678fd Fix transformed test compile error on GCC 5.4
The function object 'lambda' did not provide result_type like the other
function objects did.

The test now compile and pass using'b2'
2017-09-24 14:13:42 +01:00
Jean-Philippe DUFRAIGNE
1b4f8100ef Allow iterator copy for lambda in transformed and filtered
Lambda has no default constructor nor a copy or move assignment.

range\test\adaptors.cpp is checking that produced ranges are copiable,
but it is not doing so the for lambda, or lambda like objects.

default_constructible_unary_fn uses an optional for default
construction.
I extended it to use its emplace facility to copy assign non copy
assignable types.
(see boost::optional 'Type Requierment':  'If T is not MoveAssignable,
it is still possible to reset the value of optional<T> using function
emplace():')
2016-10-23 23:27:31 +01:00
Robin Eckert
3225aaf82b add a new range adaptor boost::adaptors::ref_unwrapped
The new adaptor is like boost::adaptors::indirected, but for
std::reference_wrapper values (instead of pointer). It calls
.get() on every value and returns the result. It is useful for
range-based iteration of ranges of std::reference_wrapper (or
related) types.
2015-11-04 19:12:26 +01:00
morinmorin
e4f456d438 Fix credit in ticket 5014 testcase 2015-08-20 20:36:19 +09:00
Neil Groves
4a80ccd50d Ticket 10988 - Filtered adaptor should only require SinglePassRange. 2015-02-01 19:05:58 +00:00
Neil Groves
3ecf600434 Fixed range adaptors that were creating underlying iterators that were not default constructible. 2014-06-16 14:49:25 +01:00
Neil Groves
5ce6dc7814 change the return type from the indexed adaptor so that the index is available from the range element. 2014-06-09 02:12:00 +01:00
Neil Groves
5918e7e63e changed the separated function to become the new formatted adaptor. 2014-06-05 01:00:13 +01:00
Neil Groves
ed0febc902 ticket 6172 - added unit test to ensure transformed works with bind. 2014-03-09 21:51:07 +00:00
Neil Groves
0d93777ece type_erased unit test reduce dependencies of the recently split type_erased tests. 2014-03-04 12:33:51 +00:00
Neil Groves
6206535453 type_erased random_access adapter separated. 2014-03-04 12:02:28 +00:00
Neil Groves
a4633c2c1e type_erased_bidrectional.cpp formatting. 2014-03-04 11:53:13 +00:00
Neil Groves
bd1fd9610e type_erased test separated the forward traversal. 2014-03-04 11:52:02 +00:00
Neil Groves
379fbc51e3 type_erased unit test separated bidirectional traversal. 2014-03-04 11:46:57 +00:00
Neil Groves
438e735dcc type_erased split out single-pass. 2014-03-04 11:41:19 +00:00
Neil Groves
c96897198a type_erased test separated the template parameter conversion test. 2014-03-04 11:34:36 +00:00
Neil Groves
b5f60f0448 removed obsolete test code from type_erased.cpp. 2014-03-04 11:28:22 +00:00
Neil Groves
8de7e29fc7 type_erased mix of values test separated. 2014-03-04 11:26:50 +00:00
Neil Groves
43ab929257 type_erased abstract and brackets tests separated. 2014-03-04 11:18:46 +00:00
Neil Groves
42a7f0c70c trac 6742 - unit test showing working phoenix combined with the transformed adaptor. 2014-03-03 14:21:35 +00:00
Neil Groves
17c0fa271c trac 9515 - fix for uniqued adaptor consistent with unique algorithm. 2014-03-03 01:24:56 +00:00
Neil Groves
d87e1f3ade make intel happy with type_erased static_assert calls. 2014-03-03 00:30:11 +00:00
Neil Groves
63acc5c633 trac 8676 sliced adaptor fixed. 2014-03-03 00:10:08 +00:00
Neil Groves
79d2a66831 trac 5816 - fix any_range requiring copyable elements. 2014-03-02 15:35:50 +00:00
Neil Groves
ceffd1cf79 strided adaptor rewritten to correct defects and optimise performance. 2014-02-26 21:17:29 +00:00
Neil Groves
654ae838ee refactored iterator_range to better handle SFINAE. 2014-02-24 18:26:03 +00:00
Neil Groves
7cd6631cae strided.cpp unit test has the deque test removed. 2014-02-21 17:52:32 +00:00
Neil Groves
96054b0b48 unit test type_erased.cpp corrected mix of value types under test. 2014-02-21 17:50:28 +00:00
Neil Groves
30e6df5a15 [boost][range] - removed warnings found building with clang 3.2.
[SVN r85698]
2013-09-16 11:21:36 +00:00
Neil Groves
90ce7f3703 [boost][range] - fix for ticket 6888 - unique predicate overloads
[SVN r85686]
2013-09-15 19:44:36 +00:00
Nathan Ridge
c908e04144 [range] Make iterator of 'indexed' adaptor default-constructible (refs #7827).
[SVN r84617]
2013-06-03 09:00:46 +00:00
Nathan Ridge
45a1acb980 [range] fix some minor typos in comments - fixes #7916
[SVN r82594]
2013-01-24 09:10:47 +00:00
Nathan Ridge
cbd915a988 [range] fixed #5314 (small mistakes in range adaptor examples)
[SVN r82346]
2013-01-04 01:18:36 +00:00
Nathan Ridge
fc88bc06ad [range] fixed #7843 (missing example in docs for 'tokenized' range adaptor)
[SVN r82345]
2013-01-04 00:58:17 +00:00
Nathan Ridge
4a44cc75c9 [range] refactor use of examples in documentation to avoid redundancy
[SVN r82344]
2013-01-03 23:44:30 +00:00
Neil Groves
41b76f8f5c [boost][range] - Ticket 5236 - Improved test coverage to ensure that the result for a random access strided range is consistent with that of a bidirectional strided range.
[SVN r72108]
2011-05-22 22:15:14 +00:00
Neil Groves
846f11a96c [boost][range] - Ticket 5236 - Strided reversing past begin issue resolved.
[SVN r72107]
2011-05-22 22:06:30 +00:00
Neil Groves
a5d94bbe21 [boost][range] - Make the type_erased adaptor test compatible with more compilers and reduce the time of test compilation/execution to avoid timeouts on the Intel compilers.
[SVN r67601]
2011-01-03 00:38:52 +00:00
Neil Groves
55fd3ca5b2 [boost][range] - Updated begin/end to be protected against accidental ADL to improve compatibility with C++0x. Added any_range which adds type erasure support. Added a type_erased adaptor to utilise the any_range. Implemented the any_iterator using a small buffer optimization to avoid heap usage.
[SVN r67541]
2011-01-01 16:46:32 +00:00
Neil Groves
efb7b50a8a [boost][range] - Improved the implementation of strided range to eliminate requirements for boost::size(rng) to be a valid expression. Each traversal category of strided_iterator is now individually implemented.
[SVN r67461]
2010-12-26 20:33:33 +00:00
Neil Groves
fd63de33e9 [boost][range] - Correctly attribute the test case kindly contributed by Michel Morin.
[SVN r67453]
2010-12-26 14:15:23 +00:00
Neil Groves
014fdb8ace [boost][range] - Corrected yesterdays erroneous modifications to the strided adaptor.
[SVN r67445]
2010-12-24 15:00:08 +00:00
Neil Groves
612cec17bb [boost][range] - Update to relax preconditions for the strided adaptor, and numerous fixes to inspection report issues.
[SVN r67418]
2010-12-22 22:31:33 +00:00
Neil Groves
22c4ab4a06 Boost.Range fixes for Tickets: 4131, 4136, 4398, 4388. Plus updated history in the documentation.
[SVN r64111]
2010-07-17 19:44:31 +00:00
Neil Groves
40714ccc7e [range] - fix erroneous change to uniqued test case.
[SVN r63935]
2010-07-12 21:52:28 +00:00
Neil Groves
5bb66037d3 [boost][range] - Improved handling of temporary ranges in range algorithms.
[SVN r63904]
2010-07-12 00:14:07 +00:00
Neil Groves
1dea353fa3 Boost.Range revert accidental check-in of lambda test. It kinda breaks most compilers - doh.
[SVN r61452]
2010-04-21 07:37:25 +00:00
Neil Groves
3e2d5cb786 Boost.MultiArray disambiguated calls to equal functions in the unit tests. These became ambiguous due to changes in Boost.Range.
[SVN r61441]
2010-04-20 21:56:33 +00:00
Jeremiah Willcock
f6c15771e2 Fixed tab and no-newline-at-end-of-file issues from inspection report
[SVN r61435]
2010-04-20 17:54:16 +00:00