VecInsertRangeFastR
Description
Insert a range using fast (order-not-preserving) placement. R-value form.
Success
Returns true. Same state effects as VecInsertRangeFastL minus the source-zeroing step; the source range is left untouched.
Failure
Returns false on allocation failure. The vector is unchanged.
Usage example (Cross-references)
Usage examples (Cross-references)
- In
VecInt.c:358:
values[i] = (i32)extract_u32(data, offset, data_size);
}
VecInsertRangeFastR(vec, values, idx, count);
}
break;
// Use VecInsertRangeFastR with a small array
VecInsertRangeFastR(&vec2, small_arr, 1, 2);
// Check vector length
- In
Vec.Insert.c:536:
size new_count = sizeof(new_items) / sizeof(new_items[0]);
bool result = VecInsertRangeFastR(&vec, new_items, idx, new_count);
result = result && (VecLen(&vec) == orig_count + new_count);- In
Insert.h:367:
/// TAGS: Vec, PushFront, Range, RValue, Fast, Unordered
///
#define VecPushFrontArrFastR(v, arr, count) VecInsertRangeFastR((v), (arr), 0, (count))
///
- In
Insert.h:726:
#define VecMustInsertRangeFastR(v, varr, idx, count) \
do { \
if (!VecInsertRangeFastR((v), (varr), (idx), (count))) { \
LOG_FATAL("VecMustInsertRangeFastR failed"); \
} \- In
Insert.h:118:
#define StrInsertManyFast(...) OVERLOAD(StrInsertManyFast, __VA_ARGS__)
#define StrInsertManyFast_3(str, zstr, idx) \
_Generic((zstr), Zstr: VecInsertRangeFastR((str), (Zstr)(zstr), (idx), ZstrLen((Zstr)(zstr))), char *: VecInsertRangeFastR((str), (Zstr)(zstr), (idx), ZstrLen((Zstr)(zstr))))
#define StrInsertManyFast_4(str, cstr, cstr_len, idx) \
_Generic((cstr), Zstr: VecInsertRangeFastR((str), (Zstr)(cstr), (idx), (cstr_len)), char *: VecInsertRangeFastR((str), (Zstr)(cstr), (idx), (cstr_len)))- In
Insert.h:120:
_Generic((zstr), Zstr: VecInsertRangeFastR((str), (Zstr)(zstr), (idx), ZstrLen((Zstr)(zstr))), char *: VecInsertRangeFastR((str), (Zstr)(zstr), (idx), ZstrLen((Zstr)(zstr))))
#define StrInsertManyFast_4(str, cstr, cstr_len, idx) \
_Generic((cstr), Zstr: VecInsertRangeFastR((str), (Zstr)(cstr), (idx), (cstr_len)), char *: VecInsertRangeFastR((str), (Zstr)(cstr), (idx), (cstr_len)))
///
- In
Insert.h:592:
/// TAGS: Str, Insert, Range, RValue, Fast, Unordered
///
#define StrInsertRangeFastR(str, varr, idx, count) VecInsertRangeFastR((str), (varr), (idx), (count))
///
Last updated on