fixes ring-buffer-iterator swap()

This commit is contained in:
Raoul Rubien
2025-05-12 14:12:09 +02:00
parent 5804af334c
commit 15919a4385

View File

@ -93,9 +93,9 @@ public:
CONSTEXPR friend ring_buffer_iterator operator+( difference_type n, const ring_buffer_iterator& it) NOEXCEPT {
return it + n;
}
CONSTEXPR friend void swap(ring_buffer_iterator& a, ring_buffer_iterator& b) COND_NOEXCEPT(noexcept(std::swap(a.container, b.container))) {
CONSTEXPR friend void swap(ring_buffer_iterator& a, ring_buffer_iterator& b) COND_NOEXCEPT(noexcept(std::swap(a.container_ptr, b.container_ptr))) {
using std::swap;
swap(a.container, b.container);
swap(a.container_ptr, b.container_ptr);
swap(a.front, b.front);
swap(a.index, b.index);
}
@ -189,9 +189,9 @@ public:
CONSTEXPR friend ring_buffer_const_iterator operator+( difference_type n, const ring_buffer_const_iterator& it) NOEXCEPT {
return it + n;
}
CONSTEXPR friend void swap(ring_buffer_const_iterator& a, ring_buffer_const_iterator& b) COND_NOEXCEPT(noexcept(std::swap(a.container, b.container))) {
CONSTEXPR friend void swap(ring_buffer_const_iterator& a, ring_buffer_const_iterator& b) COND_NOEXCEPT(noexcept(std::swap(a.container_ptr, b.container_ptr))) {
using std::swap;
swap(a.container, b.container);
swap(a.container_ptr, b.container_ptr);
swap(a.front, b.front);
swap(a.index, b.index);
}