From: Kevin Day Date: Sat, 1 Nov 2025 15:42:26 +0000 (-0500) Subject: Feature: Add additional status codes, F_read_write codes. X-Git-Tag: 0.7.3~8 X-Git-Url: https://www.git.kevux.org/?a=commitdiff_plain;h=f7c1b1a45698712b87517aae1fb328d15a0ede91;p=fll Feature: Add additional status codes, F_read_write codes. - F_read_write - F_read_write_execute - F_read_write_execute_not - F_read_write_execute_only - F_read_write_not - F_read_write_only --- diff --git a/level_0/f_status/c/status.h b/level_0/f_status/c/status.h index af1536e..3852413 100644 --- a/level_0/f_status/c/status.h +++ b/level_0/f_status/c/status.h @@ -715,6 +715,12 @@ extern "C" { F_read, F_read_not, F_read_only, + F_read_write, + F_read_write_execute, + F_read_write_execute_not, + F_read_write_execute_only, + F_read_write_not, + F_read_write_only, F_ready, F_ready_not, F_receive, diff --git a/level_0/f_status_string/c/status_string.c b/level_0/f_status_string/c/status_string.c index aee00de..9427036 100644 --- a/level_0/f_status_string/c/status_string.c +++ b/level_0/f_status_string/c/status_string.c @@ -590,6 +590,12 @@ extern "C" { const f_string_static_t f_status_read_s = macro_f_string_static_t_initialize_1(F_status_read_s, 0, F_status_read_s_length); const f_string_static_t f_status_read_not_s = macro_f_string_static_t_initialize_1(F_status_read_not_s, 0, F_status_read_not_s_length); const f_string_static_t f_status_read_only_s = macro_f_string_static_t_initialize_1(F_status_read_only_s, 0, F_status_read_only_s_length); + const f_string_static_t f_status_read_write_s = macro_f_string_static_t_initialize_1(F_status_read_write_s, 0, F_status_read_write_s_length); + const f_string_static_t f_status_read_write_execute_s = macro_f_string_static_t_initialize_1(F_status_read_write_execute_s, 0, F_status_read_write_execute_s_length); + const f_string_static_t f_status_read_write_execute_not_s = macro_f_string_static_t_initialize_1(F_status_read_write_execute_not_s, 0, F_status_read_write_execute_not_s_length); + const f_string_static_t f_status_read_write_execute_only_s = macro_f_string_static_t_initialize_1(F_status_read_write_execute_only_s, 0, F_status_read_write_execute_only_s_length); + const f_string_static_t f_status_read_write_not_s = macro_f_string_static_t_initialize_1(F_status_read_write_not_s, 0, F_status_read_write_not_s_length); + const f_string_static_t f_status_read_write_only_s = macro_f_string_static_t_initialize_1(F_status_read_write_only_s, 0, F_status_read_write_only_s_length); const f_string_static_t f_status_ready_s = macro_f_string_static_t_initialize_1(F_status_ready_s, 0, F_status_ready_s_length); const f_string_static_t f_status_ready_not_s = macro_f_string_static_t_initialize_1(F_status_ready_not_s, 0, F_status_ready_not_s_length); const f_string_static_t f_status_receive_s = macro_f_string_static_t_initialize_1(F_status_receive_s, 0, F_status_receive_s_length); @@ -3637,6 +3643,36 @@ extern "C" { break; + case F_read_write: + *name = f_status_read_write_s; + + break; + + case F_read_write_execute: + *name = f_status_read_write_execute_s; + + break; + + case F_read_write_execute_not: + *name = f_status_read_write_execute_not_s; + + break; + + case F_read_write_execute_only: + *name = f_status_read_write_execute_only_s; + + break; + + case F_read_write_not: + *name = f_status_read_write_not_s; + + break; + + case F_read_write_only: + *name = f_status_read_write_only_s; + + break; + case F_ready: *name = f_status_ready_s; diff --git a/level_0/f_status_string/c/status_string.h b/level_0/f_status_string/c/status_string.h index de1ab3f..91bf911 100644 --- a/level_0/f_status_string/c/status_string.h +++ b/level_0/f_status_string/c/status_string.h @@ -743,6 +743,12 @@ extern "C" { #define F_status_read_s "F_read" #define F_status_read_not_s "F_read_not" #define F_status_read_only_s "F_read_only" + #define F_status_read_write_s "F_read_write" + #define F_status_read_write_execute_s "F_read_write_execute" + #define F_status_read_write_execute_not_s "F_read_write_execute_not" + #define F_status_read_write_execute_only_s "F_read_write_execute_only" + #define F_status_read_write_not_s "F_read_write_not" + #define F_status_read_write_only_s "F_read_write_only" #define F_status_ready_s "F_ready" #define F_status_ready_not_s "F_ready_not" #define F_status_receive_s "F_receive" @@ -1397,6 +1403,12 @@ extern "C" { #define F_status_read_s_length 6 #define F_status_read_not_s_length 10 #define F_status_read_only_s_length 11 + #define F_status_read_write_s_length 12 + #define F_status_read_write_execute_s_length 20 + #define F_status_read_write_execute_not_s_length 24 + #define F_status_read_write_execute_only_s_length 25 + #define F_status_read_write_not_s_length 16 + #define F_status_read_write_only_s_length 17 #define F_status_ready_s_length 7 #define F_status_ready_not_s_length 11 #define F_status_receive_s_length 9 @@ -2053,6 +2065,12 @@ extern "C" { extern const f_string_static_t f_status_read_s; extern const f_string_static_t f_status_read_not_s; extern const f_string_static_t f_status_read_only_s; + extern const f_string_static_t f_status_read_write_s; + extern const f_string_static_t f_status_read_write_execute_s; + extern const f_string_static_t f_status_read_write_execute_not_s; + extern const f_string_static_t f_status_read_write_execute_only_s; + extern const f_string_static_t f_status_read_write_not_s; + extern const f_string_static_t f_status_read_write_only_s; extern const f_string_static_t f_status_ready_s; extern const f_string_static_t f_status_ready_not_s; extern const f_string_static_t f_status_receive_s; diff --git a/level_0/f_status_string/tests/unit/c/test-status_string-to.c b/level_0/f_status_string/tests/unit/c/test-status_string-to.c index 1ec3daa..74dd190 100644 --- a/level_0/f_status_string/tests/unit/c/test-status_string-to.c +++ b/level_0/f_status_string/tests/unit/c/test-status_string-to.c @@ -609,6 +609,12 @@ void test__f_status_string_to__works(void **state) { F_read, F_read_not, F_read_only, + F_read_write, + F_read_write_execute, + F_read_write_execute_not, + F_read_write_execute_only, + F_read_write_not, + F_read_write_only, F_ready, F_ready_not, F_receive, @@ -1332,6 +1338,12 @@ void test__f_status_string_to__works(void **state) { f_status_read_s, f_status_read_not_s, f_status_read_only_s, + f_status_read_write_s, + f_status_read_write_execute_s, + f_status_read_write_execute_not_s, + f_status_read_write_execute_only_s, + f_status_read_write_not_s, + f_status_read_write_only_s, f_status_ready_s, f_status_ready_not_s, f_status_receive_s, @@ -1475,7 +1487,7 @@ void test__f_status_string_to__works(void **state) { f_status_status_code_last_s, }; - for (uint16_t i = 0; i < 720; ++i) { + for (uint16_t i = 0; i < 726; ++i) { f_string_static_t result = f_string_static_t_initialize; diff --git a/level_1/fl_status_string/c/status_string.c b/level_1/fl_status_string/c/status_string.c index 9bd2499..87200db 100644 --- a/level_1/fl_status_string/c/status_string.c +++ b/level_1/fl_status_string/c/status_string.c @@ -3510,6 +3510,42 @@ extern "C" { return F_okay; } + if (f_compare_dynamic(name, f_status_read_write_s) == F_equal_to) { + *code = F_read_write; + + return F_okay; + } + + if (f_compare_dynamic(name, f_status_read_write_execute_s) == F_equal_to) { + *code = F_read_write_execute; + + return F_okay; + } + + if (f_compare_dynamic(name, f_status_read_write_execute_not_s) == F_equal_to) { + *code = F_read_write_execute_not; + + return F_okay; + } + + if (f_compare_dynamic(name, f_status_read_write_execute_only_s) == F_equal_to) { + *code = F_read_write_execute_only; + + return F_okay; + } + + if (f_compare_dynamic(name, f_status_read_write_not_s) == F_equal_to) { + *code = F_read_write_not; + + return F_okay; + } + + if (f_compare_dynamic(name, f_status_read_write_only_s) == F_equal_to) { + *code = F_read_write_only; + + return F_okay; + } + if (f_compare_dynamic(name, f_status_ready_s) == F_equal_to) { *code = F_ready; diff --git a/level_1/fl_status_string/tests/unit/c/test-status_string-from.c b/level_1/fl_status_string/tests/unit/c/test-status_string-from.c index 25bd422..3ef380c 100644 --- a/level_1/fl_status_string/tests/unit/c/test-status_string-from.c +++ b/level_1/fl_status_string/tests/unit/c/test-status_string-from.c @@ -625,6 +625,12 @@ void test__fl_status_string_from__works(void **state) { F_read, F_read_not, F_read_only, + F_read_write, + F_read_write_execute, + F_read_write_execute_not, + F_read_write_execute_only, + F_read_write_not, + F_read_write_only, F_ready, F_ready_not, F_receive, @@ -1348,6 +1354,12 @@ void test__fl_status_string_from__works(void **state) { f_status_read_s, f_status_read_not_s, f_status_read_only_s, + f_status_read_write_s, + f_status_read_write_execute_s, + f_status_read_write_execute_not_s, + f_status_read_write_execute_only_s, + f_status_read_write_not_s, + f_status_read_write_only_s, f_status_ready_s, f_status_ready_not_s, f_status_receive_s, @@ -1491,7 +1503,7 @@ void test__fl_status_string_from__works(void **state) { f_status_status_code_last_s, }; - for (uint16_t i = 0; i < 720; ++i) { + for (uint16_t i = 0; i < 726; ++i) { f_status_t result = F_okay;