FastLED 3.9.15
Loading...
Searching...
No Matches

◆ reset()

template<typename T, typename Alloc = fl::allocator<T>>
void fl::scoped_array2< T, Alloc >::reset ( fl::size_t new_size = 0)
inline

Definition at line 160 of file scoped_array.h.

160 {
161 if (arr_) {
162 // Call destructor on each element
163 for (fl::size_t i = 0; i < size_; ++i) {
164 // arr_[i].~T();
165 mAlloc.destroy(&arr_[i]);
166 }
167 // ::operator delete(arr_);
168 mAlloc.deallocate(arr_, size_);
169 arr_ = nullptr;
170 }
171
172 size_ = new_size;
173 if (new_size > 0) {
174 // arr_ = static_cast<T*>(::operator new(new_size * sizeof(T)));
175 arr_ = mAlloc.allocate(new_size);
176 // Default initialize each element
177 for (fl::size_t i = 0; i < new_size; ++i) {
178 // new (&arr_[i]) T();
179 mAlloc.construct(&arr_[i]);
180 }
181 }
182 }

References arr_, mAlloc, and size_.

Referenced by operator=().

+ Here is the caller graph for this function: