Remove array structs #10

Merged
abdelrahman merged 6 commits from no-array-structs into main 2026-01-02 16:50:53 +00:00
2 changed files with 4 additions and 4 deletions
Showing only changes of commit 996f9d4ff9 - Show all commits

View File

@@ -8,7 +8,7 @@
#include <stddef.h>
#define _offset_pointer(PTR, OFFSET) ((void *)((uptr)(PTR) + (OFFSET)))
#define _array_header(ARRAY) (ArrayHeader *)(_offset_pointer(ARRAY, -sizeof(ArrayHeader)))
#define _array_header(ARRAY) (ArrayHeader *)(_offset_pointer(ARRAY, (i64)sizeof(ArrayHeader) * -1))
wapp_persist inline void _array_validate(const GenericArray array, u64 item_size);

View File

@@ -110,9 +110,9 @@ typedef Str8 *Str8Array;
}.items \
)
#define wapp_array_pop(TYPE, ARRAY) \
(ARRAY != NULL && _array_count((GenericArray)ARRAY) > 0 ? \
*((TYPE *)_array_pop((GenericArray)ARRAY, sizeof(TYPE))) : \
(TYPE){0} \
(ARRAY == NULL || _array_count((GenericArray)ARRAY) == 0 ? \
(TYPE){0} : \
*((TYPE *)_array_pop((GenericArray)ARRAY, sizeof(TYPE))) \
)
#endif // !WAPP_PLATFORM_CPP