Skip to content

VecInsertFast

Description

Insert a single element at idx using fast (order-not-preserving) placement, taking ownership of lval when no deep-copy handler is configured. Default unsuffixed form aliasing to the L (ownership) variant. See VecInsertFastL for the full SUCCESS/FAILURE contract.

Usage example (Cross-references)

Usage examples (Cross-references)
                    char  *str   = generate_cstring(data, offset, data_size, 32);
                    if (str) {
                        VecInsertFast(vec, str, index);
                        cleanup_cstring(str);
                    }
                    size_t index = extract_u32(data, offset, data_size) % (VecLen(vec) + 1);
                    Str    str   = generate_str_from_input(data, offset, data_size, 32, alloc);
                    VecInsertFast(vec, str, index);
                }
                break;
    
                if (idx <= VecLen(vec)) {
                    VecInsertFast(vec, value, idx);
                }
                break;
    #define VecMustInsertFast(v, lval, idx)                                                                                \
        do {                                                                                                               \
            if (!VecInsertFast((v), (lval), (idx))) {                                                                      \
                LOG_FATAL("VecMustInsertFast failed");                                                                     \
            }                                                                                                              \
Last updated on