FastLED 3.10.6
Loading...
Searching...
No Matches

◆ ensure_front_room()

template<typename T>
void fl::deque< T >::ensure_front_room ( )
inlineprivate

Definition at line 148 of file deque.h.

148 {
149 if (mFrontOffset > 0) {
150 // Stays within current front chunk; that chunk is guaranteed
151 // allocated when mSize > 0, and allocated below for empty deque.
152 if (mMapCapacity == 0) {
153 grow_map(1, 0);
154 if (mMapCapacity == 0) return;
155 }
156 if (mMap[mFrontMapIdx] == nullptr) {
158 }
159 return;
160 }
161 // mFrontOffset == 0: need the previous chunk.
162 if (mFrontMapIdx == 0) {
163 grow_map(1, 0);
164 if (mFrontMapIdx == 0) return; // grow failed
165 }
166 if (mMap[mFrontMapIdx - 1] == nullptr) {
168 }
169 }
fl::size mMapCapacity
Definition deque.h:39
T * allocate_chunk() FL_NO_EXCEPT
Definition deque.h:45
fl::size mFrontOffset
Definition deque.h:41
void grow_map(fl::size extra_front, fl::size extra_back) FL_NO_EXCEPT
Definition deque.h:97
T ** mMap
Definition deque.h:38
fl::size mFrontMapIdx
Definition deque.h:40

Referenced by fl::deque< int >::emplace_front(), fl::deque< int >::push_front(), and fl::deque< int >::push_front().

+ Here is the caller graph for this function: