Erase range [first_index, first_index + count).
Definition at line 205 of file basic_vector.cpp.hpp.
205 {
206 if (count == 0 || first_index >=
mSize)
return;
207 if (first_index + count >
mSize) {
208 count =
mSize - first_index;
209 }
210
211 fl::size remaining =
mSize - first_index - count;
212
214
215 for (fl::size i = 0; i < count; ++i) {
217 }
218
219 for (fl::size i = 0; i < remaining; ++i) {
222 mOps->move_construct(dst, src);
224 }
225 } else {
226
227 if (remaining > 0) {
230 remaining);
231 }
232 }
234}
const vector_element_ops * mOps
void * element_ptr(fl::size index) FL_NOEXCEPT
Pointer to element at index (byte arithmetic).
void trivial_move_left(void *dst, const void *src, fl::size count) const FL_NOEXCEPT
References element_ptr(), mOps, mSize, and trivial_move_left().
Referenced by erase_impl(), and fl::vector< fl::i16 >::erase_range().