MCPcopy Create free account
hub / github.com/FastLED/FastLED / iterator

Class iterator

src/fl/stl/deque.h:61–159  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

59public:
60 // Iterator implementation (RandomAccessIterator)
61 class iterator {
62 public:
63 typedef T value_type;
64 typedef T& reference;
65 typedef T* pointer;
66 typedef fl::size difference_type;
67 typedef fl::random_access_iterator_tag iterator_category;
68
69 private:
70 deque* mDeque;
71 fl::size mIndex;
72
73 friend class deque;
74
75 public:
76 iterator(deque* dq, fl::size index) : mDeque(dq), mIndex(index) {}
77
78 T& operator*() const {
79 return (*mDeque)[mIndex];
80 }
81
82 T* operator->() const {
83 return &(*mDeque)[mIndex];
84 }
85
86 iterator& operator++() {
87 ++mIndex;
88 return *this;
89 }
90
91 iterator operator++(int) {
92 iterator temp = *this;
93 ++mIndex;
94 return temp;
95 }
96
97 iterator& operator--() {
98 --mIndex;
99 return *this;
100 }
101
102 iterator operator--(int) {
103 iterator temp = *this;
104 --mIndex;
105 return temp;
106 }
107
108 iterator& operator+=(fl::size n) {
109 mIndex += n;
110 return *this;
111 }
112
113 iterator operator+(fl::size n) const {
114 iterator temp = *this;
115 return temp += n;
116 }
117
118 iterator& operator-=(fl::size n) {

Callers 5

beginMethod · 0.70
endMethod · 0.70
insertMethod · 0.70
eraseMethod · 0.70
emplaceMethod · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected