[libcxx-commits] [PATCH] D131495: [libc++] implement "pair" section of P2321R2 `zip`

Hui via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Aug 10 09:47:25 PDT 2022


huixie90 created this revision.
Herald added a project: All.
huixie90 updated this revision to Diff 451526.
huixie90 added a comment.
huixie90 edited the summary of this revision.
huixie90 added reviewers: ldionne, philnik, var-const.
huixie90 published this revision for review.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.

implement swap


- add constructors that takes non-const lvalue ref pair and const rvalue ref pair
- add const assignment operators
- add const swap member and non member

(note) the pair changes in `uses_allocator_construction_args` has not been implemented as the C++20 paper P0591r4 has not been implemented in libcxx


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D131495

Files:
  libcxx/docs/Status/ZipProjects.csv
  libcxx/include/__utility/pair.h
  libcxx/include/utility
  libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_copy_convert.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_copy_pair.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_move_convert.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/assign_const_move_pair.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/ctor_pair_U_V_const_move.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/ctor_pair_U_V_ref.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.pair/swap_member_const.pass.cpp
  libcxx/test/std/utilities/utility/pairs/pairs.spec/non_member_const_swap.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D131495.451526.patch
Type: text/x-patch
Size: 40206 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20220810/d5560629/attachment-0001.bin>


More information about the libcxx-commits mailing list