Page MenuHomePhabricator

[libc++][ranges] Implement `ranges::remove_copy{, _if}`.

Authored by var-const on Tue, Jul 26, 2:15 PM.

Diff Detail

Event Timeline

philnik created this revision.Tue, Jul 26, 2:15 PM
Herald added a project: Restricted Project. · View Herald TranscriptTue, Jul 26, 2:15 PM
huixie90 updated this revision to Diff 448352.Thu, Jul 28, 8:54 AM
  • finalise ranges::remove_copy{_if}
  • fixed a bug where ranges::remove_copy_if got the predicate inverted
  • enabled all the "robust" tests
  • added tests for ranges::remove_copy_if
huixie90 published this revision for review.Thu, Jul 28, 8:55 AM
huixie90 added reviewers: var-const, philnik.
Herald added a project: Restricted Project. · View Herald TranscriptThu, Jul 28, 8:56 AM
Herald added a reviewer: Restricted Project. · View Herald Transcript
var-const added inline comments.Fri, Jul 29, 11:56 PM

Missing the definition of remove_copy_result.


Needs tests for indirectly_copyable and indirect_binary_predicate.


Need to count invocations of the predicate as well.


This should be made consistent with the other test file.


These two files should ideally be almost mirror versions of each other.

var-const commandeered this revision.Fri, Jul 29, 11:57 PM
var-const removed a reviewer: var-const.
var-const retitled this revision from [libc++] Implement ranges::remove_copy{, _if} to [libc++][ranges] Implement `ranges::remove_copy{, _if}`..Mon, Aug 1, 2:02 AM
var-const updated this revision to Diff 448959.Mon, Aug 1, 2:06 AM

Address the existing feedback and rebase on main.

ldionne accepted this revision.Tue, Aug 2, 2:14 PM
This revision is now accepted and ready to land.Tue, Aug 2, 2:14 PM
This revision was automatically updated to reflect the committed changes.