Update file IO API

This commit is contained in:
2025-12-14 01:42:45 +00:00
parent e9aebeccbf
commit b51482057a
11 changed files with 85 additions and 87 deletions

View File

@@ -10,36 +10,42 @@
#define _array_header(DATA_PTR) (ArrayHeader *)((u8 *)DATA_PTR - sizeof(ArrayHeader))
u64 _array_count(u8 *array, u64 item_size) {
u64 _array_count(u8 *array) {
wapp_debug_assert(array != NULL, "`array` should not be NULL");
ArrayHeader *arr_header = _array_header(array);
wapp_runtime_assert(WAPP_ARRAY_MAGIC == arr_header->magic, "`array` is not a valid wapp array");
wapp_runtime_assert(item_size == arr_header->item_size, "Invalid item type provided");
return arr_header->count;
}
u64 _array_capacity(u8 *array, u64 item_size) {
u64 _array_capacity(u8 *array) {
wapp_debug_assert(array != NULL, "`array` should not be NULL");
ArrayHeader *arr_header = _array_header(array);
wapp_runtime_assert(WAPP_ARRAY_MAGIC == arr_header->magic, "`array` is not a valid wapp array");
wapp_runtime_assert(item_size == arr_header->item_size, "Invalid item type provided");
return arr_header->capacity;
}
u64 _array_item_size(u8 *array, u64 item_size) {
u64 _array_item_size(u8 *array) {
wapp_debug_assert(array != NULL, "`array` should not be NULL");
ArrayHeader *arr_header = _array_header(array);
wapp_runtime_assert(WAPP_ARRAY_MAGIC == arr_header->magic, "`array` is not a valid wapp array");
wapp_runtime_assert(item_size == arr_header->item_size, "Invalid item type provided");
return arr_header->item_size;
}
void _array_set_count(u8 *array, u64 count) {
wapp_debug_assert(array != NULL, "`array` should not be NULL");
ArrayHeader *arr_header = _array_header(array);
wapp_runtime_assert(WAPP_ARRAY_MAGIC == arr_header->magic, "`array` is not a valid wapp array");
arr_header->count = count;
}
u8 *_array_get(u8 *array, u64 index, u64 item_size) {
wapp_debug_assert(array != NULL, "`array` should not be NULL");