ecoli_vec(3)
hi bestie π welcome to ecoli_vec(3) β yep, that's the Libecoli manual page, section 3, and it's literally all about vectors. no cap.
β¨ NAME β¨
ecoli_vecβ Vectors- Helpers for vectors manipulation.
π¦ SYNOPSIS π¦
Typedefs
typedef void(* ec_vec_elt_free_t) (void *ptr)
typedef void(* ec_vec_elt_copy_t) (void *dst, void *src)
Functions
struct ec_vec * ec_vec (size_t elt_size, size_t size, ec_vec_elt_copy_t
copy, ec_vec_elt_free_t free)
int ec_vec_add_by_ref (struct ec_vec *vec, void *ptr)
int ec_vec_add_ptr (struct ec_vec *vec, void *elt)
int ec_vec_add_u8 (struct ec_vec *vec, uint8_t elt)
int ec_vec_add_u16 (struct ec_vec *vec, uint16_t elt)
int ec_vec_add_u32 (struct ec_vec *vec, uint32_t elt)
int ec_vec_add_u64 (struct ec_vec *vec, uint64_t elt)
int ec_vec_get (void *ptr, const struct ec_vec *vec, size_t idx)
struct ec_vec * ec_vec_dup (const struct ec_vec *vec)
struct ec_vec * ec_vec_ndup (const struct ec_vec *vec, size_t off, size_t len)
void ec_vec_free (struct ec_vec *vec)
π Detailed Description π
Helpers for vectors manipulation.
The ec_vec API provides helpers to manipulate vectors of objects of any kind. it's giving "one little API, endless vector chaos" π
π Typedef Documentation π
typedef void(* ec_vec_elt_free_t) (void *ptr)
Custom free callback.
If it's NULL, the default does nothing.
Definition at line 25 of file vec.h.
typedef void(* ec_vec_elt_copy_t) (void *dst, void *src)
Custom copy callback.
If it's NULL, the default is literally: memcpy(dst, src, vec->elt_size).
Definition at line 32 of file vec.h.
π Function Documentation π
ec_vec
struct ec_vec* ec_vec (size_t elt_size, size_t size, ec_vec_elt_copy_t copy,
ec_vec_elt_free_t free)
Create a new vector. fresh start energy β¨
ec_vec_add_by_ref
int ec_vec_add_by_ref (struct ec_vec * vec, void * ptr)
Add reference to a vector.
ec_vec_add_ptr
int ec_vec_add_ptr (struct ec_vec * vec, void * elt)
Add opaque element to a vector.
ec_vec_add_u8
int ec_vec_add_u8 (struct ec_vec * vec, uint8_t elt)
Add uint8_t value to a vector.
ec_vec_add_u16
int ec_vec_add_u16 (struct ec_vec * vec, uint16_t elt)
Add uint16_t value to a vector.
ec_vec_add_u32
int ec_vec_add_u32 (struct ec_vec * vec, uint32_t elt)
Add uint32_t value to a vector.
ec_vec_add_u64
int ec_vec_add_u64 (struct ec_vec * vec, uint64_t elt)
Add uint64_t value to a vector.
ec_vec_get
int ec_vec_get (void * ptr, const struct ec_vec * vec, size_t idx)
Get element located at an offset.
ec_vec_dup
struct ec_vec* ec_vec_dup (const struct ec_vec * vec)
Duplicate a vector. twin behavior fr fr π―
ec_vec_ndup
struct ec_vec* ec_vec_ndup (const struct ec_vec * vec, size_t off, size_t
len)
Duplicate a portion of a vector.
ec_vec_free
void ec_vec_free (struct ec_vec * vec)
Free a vector and all its contents. clean up your room bestie π§Ή
π Author π
Generated automatically by Doxygen for Libecoli from the source code.
okay that's the whole page, bestie π«Ά β it's from Libecoli, Version 0.11.3, dated Thu Apr 9 2026, and it's the ecoli_vec(3) page. periodt π
β¨
π¦ where this page comes from
- epel 9: libecoli-devel 0.11.3-1.el9 Β· BSD-3-Clause AND LicenseRef-Fedora-Public-Domain
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms