summaryrefslogtreecommitdiff
path: root/src/buffer.hh
diff options
context:
space:
mode:
authorMaxime Coste <mawww@kakoune.org>2022-11-20 16:59:08 +1100
committerMaxime Coste <mawww@kakoune.org>2022-11-20 16:59:08 +1100
commitb7b036c210aba03c5dc1851b9de5fe9b3351dcd8 (patch)
treedd86ca3e519c1c875868353afc872f0e03da2cdd /src/buffer.hh
parent91d45a100a39345f06d9789ded9172fe60887c27 (diff)
Change BufferIterator comparison to assert same buffer
Comparing iterators between buffers should never happen, and the only place we did was with default constructed BufferIterator which we replace by casting the iterator to bool. This should improve performance on iterator heavy code.
Diffstat (limited to 'src/buffer.hh')
-rw-r--r--src/buffer.hh2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/buffer.hh b/src/buffer.hh
index ce336e96..71c5cd51 100644
--- a/src/buffer.hh
+++ b/src/buffer.hh
@@ -75,6 +75,8 @@ public:
const char& operator[](size_t n) const noexcept;
size_t operator- (const BufferIterator& iterator) const;
+ explicit operator bool() const { return static_cast<bool>(m_buffer); }
+
BufferIterator operator+ (ByteCount size) const;
BufferIterator operator- (ByteCount size) const;