base: Remove begin() and end() from CircleBuf.
These functions return iterators which are inconsistent with the usage model for this type. It should be accessed using the peek, push, and pop methods and not iterators. If you need a class with iterators which is oriented around accessing individual elements at a time, the CircularQueue type is likely a better choice. Change-Id: I9f37eab12e490b63d870d378a91f601dad353f25 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/38998 Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Gabe Black <gabe.black@gmail.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
@@ -62,8 +62,6 @@ class CircleBuf
|
||||
|
||||
public:
|
||||
using value_type = T;
|
||||
using iterator = typename std::vector<T>::iterator;
|
||||
using const_iterator = typename std::vector<T>::const_iterator;
|
||||
|
||||
explicit CircleBuf(size_t size) : buffer(size), maxSize(size) {}
|
||||
|
||||
@@ -71,15 +69,6 @@ class CircleBuf
|
||||
size_t size() const { return used; }
|
||||
size_t capacity() const { return maxSize; }
|
||||
|
||||
iterator begin() { return buffer.begin() + start % maxSize; }
|
||||
const_iterator begin() const { return buffer.begin() + start % maxSize; }
|
||||
iterator end() { return buffer.begin() + (start + used) % maxSize; }
|
||||
const_iterator
|
||||
end() const
|
||||
{
|
||||
return buffer.begin() + (start + used) % maxSize;
|
||||
}
|
||||
|
||||
/**
|
||||
* Throw away any data in the buffer.
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user