MCPcopy Create free account
hub / github.com/cppcheck-opensource/cppcheck / TokenIterator

Class TokenIterator

lib/tokenrange.h:40–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

38 TokenRangeBase(T* front, T* back) : mFront(front), mBack(back) {}
39
40 struct TokenIterator {
41 using iterator_category = std::forward_iterator_tag;
42 using value_type = T*;
43 using difference_type = std::ptrdiff_t;
44 using pointer = void;
45 using reference = T*;
46
47 T* mt;
48 TokenIterator() : mt(nullptr) {}
49 explicit TokenIterator(T* t) : mt(t) {}
50 TokenIterator& operator++() {
51 mt = mt->next();
52 return *this;
53 }
54 bool operator==(const TokenIterator& b) const {
55 return mt == b.mt;
56 }
57 bool operator!=(const TokenIterator& b) const {
58 return mt != b.mt;
59 }
60 T* operator*() const {
61 return mt;
62 }
63 };
64
65 TokenIterator begin() const {
66 return TokenIterator(mFront);

Callers 2

beginMethod · 0.85
endMethod · 0.85

Calls 1

nextMethod · 0.80

Tested by

no test coverage detected