From 857205fe451f1f88abaafa75c825e1eddf163b34 Mon Sep 17 00:00:00 2001 From: Vitor Hideyoshi Date: Fri, 27 Mar 2026 15:38:10 -0300 Subject: [PATCH] refactor dynamic array: update default size definitions and improve header guard --- src/dynamic_array.c | 2 +- src/dynamic_array.h | 19 ++++++++++++++----- src/test_dynamic_array.c | 4 ++-- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/dynamic_array.c b/src/dynamic_array.c index 23fb1bf..653fb1b 100644 --- a/src/dynamic_array.c +++ b/src/dynamic_array.c @@ -6,7 +6,7 @@ Array *array_create(const ArrayCreateOptions *options) { - const ArrayCreateOptions opt = options != NULL ? *options : DEFAULT_ARRAY_CREATE_OPTIONS; + const ArrayCreateOptions opt = options != NULL ? *options : DYNAMIC_ARRAY_DEFAULT_ARRAY_CREATE_OPTIONS; Array *array = malloc(sizeof(Array)); array->capacity = opt.initial_size; diff --git a/src/dynamic_array.h b/src/dynamic_array.h index ed575a9..c2736c7 100644 --- a/src/dynamic_array.h +++ b/src/dynamic_array.h @@ -1,8 +1,14 @@ -#pragma once +#ifndef DYNAMIC_ARRAY_H +#define DYNAMIC_ARRAY_H + +#define DYNAMIC_ARRAY_VERSION_MAJOR 0 +#define DYNAMIC_ARRAY_VERSION_MINOR 1 +#define DYNAMIC_ARRAY_VERSION_BUILD 0 +#define DYNAMIC_ARRAY_VERSION ((DYNAMIC_ARRAY_VERSION_MAJOR << 16) | (DYNAMIC_ARRAY_VERSION_MINOR << 8) | DYNAMIC_ARRAY_VERSION_BUILD) #include -#define DEFAULT_ARRAY_SIZE 10 +#define DYNAMIC_ARRAY_DEFAULT_ARRAY_SIZE 10 typedef struct { @@ -20,8 +26,8 @@ typedef struct { } ArrayCreateOptions; -#define DEFAULT_ARRAY_CREATE_OPTIONS \ - (ArrayCreateOptions){ DEFAULT_ARRAY_SIZE, sizeof(int) } +#define DYNAMIC_ARRAY_DEFAULT_ARRAY_CREATE_OPTIONS \ + (ArrayCreateOptions){ DYNAMIC_ARRAY_DEFAULT_ARRAY_SIZE, sizeof(int) } Array *array_create(const ArrayCreateOptions *options); @@ -53,4 +59,7 @@ size_t array_get_capacity(const Array *p_array); #define array_set_value_as(type, arr, idx, value) \ ((sizeof(type) == (arr)->element_size) ? \ (array_set_value((arr), (idx), (value)), 0) : \ - -1) \ No newline at end of file + -1) + + +#endif \ No newline at end of file diff --git a/src/test_dynamic_array.c b/src/test_dynamic_array.c index 6e6166d..571a481 100644 --- a/src/test_dynamic_array.c +++ b/src/test_dynamic_array.c @@ -12,7 +12,7 @@ void tearDown() { void test_array_create_without_options(void) { const Array *array = array_create(NULL); - TEST_ASSERT_EQUAL(DEFAULT_ARRAY_SIZE, array->capacity); + TEST_ASSERT_EQUAL(DYNAMIC_ARRAY_DEFAULT_ARRAY_SIZE, array->capacity); } @@ -157,7 +157,7 @@ void test_array_get_capacity_default(void) { const size_t capacity = array_get_capacity(array); - TEST_ASSERT_EQUAL(DEFAULT_ARRAY_SIZE, capacity); + TEST_ASSERT_EQUAL(DYNAMIC_ARRAY_DEFAULT_ARRAY_SIZE, capacity); array_deconstructor(&array); }