mirror of
https://github.com/ceph/ceph
synced 2025-03-25 11:48:05 +00:00
xlist: implement const_iterator
Signed-off-by: John Spray <john.spray@redhat.com>
This commit is contained in:
parent
00a002143a
commit
8199f80846
@ -161,6 +161,24 @@ public:
|
||||
|
||||
iterator begin() { return iterator(_front); }
|
||||
iterator end() { return iterator(NULL); }
|
||||
|
||||
class const_iterator {
|
||||
private:
|
||||
item *cur;
|
||||
public:
|
||||
const_iterator(item *i = 0) : cur(i) {}
|
||||
const T operator*() { return static_cast<const T>(cur->_item); }
|
||||
const_iterator& operator++() {
|
||||
assert(cur);
|
||||
assert(cur->_list);
|
||||
cur = cur->_next;
|
||||
return *this;
|
||||
}
|
||||
bool end() const { return cur == 0; }
|
||||
};
|
||||
|
||||
const_iterator begin() const { return const_iterator(_front); }
|
||||
const_iterator end() const { return const_iterator(NULL); }
|
||||
};
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user