diff options
author | Abseil Team <absl-team@google.com> | 2022-10-25 12:55:46 -0700 |
---|---|---|
committer | Copybara-Service <copybara-worker@google.com> | 2022-10-25 12:56:36 -0700 |
commit | 2fc358dab079c220feb81f75b5a366f8d1464cd4 (patch) | |
tree | 7f64d79f4a5e8b2aa5e44e95fb709e0c35efa412 /absl/container/inlined_vector.h | |
parent | 90184f6cdf914e1e88c719cfbccc15f22bfa11dc (diff) | |
download | abseil-2fc358dab079c220feb81f75b5a366f8d1464cd4.tar.gz abseil-2fc358dab079c220feb81f75b5a366f8d1464cd4.tar.bz2 abseil-2fc358dab079c220feb81f75b5a366f8d1464cd4.zip |
`absl::InlinedVector::swap` supports non-assignable types.
PiperOrigin-RevId: 483752526
Change-Id: Ie6b63a4a3cc7593e5b8bf255ba571a77d609ce04
Diffstat (limited to 'absl/container/inlined_vector.h')
-rw-r--r-- | absl/container/inlined_vector.h | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/absl/container/inlined_vector.h b/absl/container/inlined_vector.h index 10b1896b..15616001 100644 --- a/absl/container/inlined_vector.h +++ b/absl/container/inlined_vector.h @@ -97,14 +97,11 @@ class InlinedVector { using DisableIfAtLeastForwardIterator = absl::enable_if_t< !inlined_vector_internal::IsAtLeastForwardIterator<Iterator>::value, int>; - struct MemcpyPolicy {}; - struct ElementwiseAssignPolicy {}; - struct ElementwiseConstructPolicy {}; - - using MoveAssignmentPolicy = absl::conditional_t< - IsMemcpyOk<A>::value, MemcpyPolicy, - absl::conditional_t<IsMoveAssignOk<A>::value, ElementwiseAssignPolicy, - ElementwiseConstructPolicy>>; + using MemcpyPolicy = typename Storage::MemcpyPolicy; + using ElementwiseAssignPolicy = typename Storage::ElementwiseAssignPolicy; + using ElementwiseConstructPolicy = + typename Storage::ElementwiseConstructPolicy; + using MoveAssignmentPolicy = typename Storage::MoveAssignmentPolicy; public: using allocator_type = A; |