Geoffrey McRae
0b210a280d
[all] update the copyright to 2024
2024-02-01 17:16:31 +11:00
Geoffrey McRae
c591f7a8ae
[common] vector: assert if the vector itemSize <= 0
2023-10-29 20:27:49 +11:00
Geoffrey McRae
2e515657dd
[all] update/add license headers
2023-10-20 15:36:34 +11:00
Geoffrey McRae
952ebea2c5
[all] refresh copyright dates
2022-01-05 19:42:46 +11:00
Quantum
f0beedb5ba
[common] vector: implement item removal
2021-08-30 18:21:54 +10:00
Quantum
e6df0acad9
[common] vector: eliminate double allocation when possible
...
This commit creates two constructor/destructor pairs for vector:
* vector_alloc/vector_free dynamically allocates the vector itself
* vector_create/vector_destroy uses existing Vector objects
2021-08-28 19:17:15 +10:00
Quantum
ba527761ef
[common] vector: inline common operations
2021-08-28 19:17:15 +10:00
Quantum
53b4b4818b
[common] vector: allow inplace construction with vector_push
...
This makes vector_push return a pointer to the pushed element.
It also allows the user to push a NULL pointer, which means allocating the
memory for the element but do not copy anything into it.
2021-08-24 22:10:36 +10:00
Quantum
07d3d6cbe7
[common] vector: implement a clear operation
2021-08-24 22:10:36 +10:00
Quantum
b71838a530
[common] vector: allow vector_free to be used with NULL
...
This is done for consistency with free.
2021-08-24 22:10:36 +10:00
Quantum
24e0343156
[common] vector: add new data structure
2021-08-22 21:36:13 +10:00