VecRemoveRangeFast
- Macro
- April 17, 2026
Table of Contents
VecRemoveRangeFast
VecRemoveRangeFastDescription
Remove item from vector at given index and store in given pointer. Order of elements inside vector is not guaranteed to be preserved. The implementation is faster in some scenarios that VecRemove
Parameters
| Name | Direction | Description |
|---|---|---|
v | in,out | Vector to remove item from. |
ptr | out | Where removed data will be stored. If not provided then it’s equivalent to deleting the items in specified range. |
start | in | Index in vector to removing items from. |
count | in | Number of items from starting index. |
Success
return
Failure
Does not return
Usage example (Cross-references)
- In
VecCharPtr.c:264:
size_t index = extract_u32(data, offset, size) % VecLen(vec);
size_t count = extract_u32(data, offset, size) % (VecLen(vec) - index + 1);
VecRemoveRangeFast(vec, (char **)NULL, index, count);
}
break;
- In
VecStr.c:254:
size_t index = extract_u32(data, offset, size) % VecLen(vec);
size_t count = extract_u32(data, offset, size) % (VecLen(vec) - index + 1);
VecRemoveRangeFast(vec, (Str *)NULL, index, count);
}
break;
- In
VecInt.c:231:
if (len > 0 && start < len && count > 0 && start + count <= len) {
i32 removed_items[16];
VecRemoveRangeFast(vec, removed_items, start, count);
// Access removed items to test functionality
- In
Remove.h:169:
/// FAILURE : Does not return
///
#define VecDeleteRangeFast(v, start, count) VecRemoveRangeFast((v), (VEC_DATATYPE(v) *)NULL, (start), (count))