]> Kevux Git Server - fll/commitdiff
Feature: Add F_is and F_is_not status codes.
authorKevin Day <Kevin@kevux.org>
Tue, 12 Aug 2025 00:12:17 +0000 (19:12 -0500)
committerKevin Day <Kevin@kevux.org>
Tue, 12 Aug 2025 00:12:17 +0000 (19:12 -0500)
level_0/f_status/c/status.h
level_0/f_status_string/c/status_string.c
level_0/f_status_string/c/status_string.h
level_0/f_status_string/tests/unit/c/test-status_string-to.c
level_1/fl_status_string/c/status_string.c
level_1/fl_status_string/tests/unit/c/test-status_string-from.c

index c0f7471fcb128bdfe757d812bd0c7a7353ff34a8..a129d886d46348a873856688c653c22da3066ba5 100644 (file)
@@ -520,6 +520,8 @@ extern "C" {
     F_instance_too_many,
     F_interrupt,
     F_interrupt_not,
+    F_is,
+    F_is_not,
     F_keep,
     F_keep_not,
     F_known,
index 416febef608020ffab156472e9e59d8e5f6c1a2e..c4374d2ca5bf3849a2c88b5abf24958aebf54073 100644 (file)
@@ -389,6 +389,8 @@ extern "C" {
   const f_string_static_t f_status_instance_too_many_s = macro_f_string_static_t_initialize_1(F_status_instance_too_many_s, 0, F_status_instance_too_many_s_length);
   const f_string_static_t f_status_interrupt_s = macro_f_string_static_t_initialize_1(F_status_interrupt_s, 0, F_status_interrupt_s_length);
   const f_string_static_t f_status_interrupt_not_s = macro_f_string_static_t_initialize_1(F_status_interrupt_not_s, 0, F_status_interrupt_not_s_length);
+  const f_string_static_t f_status_is_s = macro_f_string_static_t_initialize_1(F_status_is_s, 0, F_status_is_s_length);
+  const f_string_static_t f_status_is_not_s = macro_f_string_static_t_initialize_1(F_status_is_not_s, 0, F_status_is_not_s_length);
   const f_string_static_t f_status_keep_s = macro_f_string_static_t_initialize_1(F_status_keep_s, 0, F_status_keep_s_length);
   const f_string_static_t f_status_keep_not_s = macro_f_string_static_t_initialize_1(F_status_keep_not_s, 0, F_status_keep_not_s_length);
   const f_string_static_t f_status_known_s = macro_f_string_static_t_initialize_1(F_status_known_s, 0, F_status_known_s_length);
@@ -2608,6 +2610,16 @@ extern "C" {
 
         break;
 
+      case F_is:
+        *name = f_status_is_s;
+
+        break;
+
+      case F_is_not:
+        *name = f_status_is_not_s;
+
+        break;
+
       case F_keep:
         *name = f_status_keep_s;
 
index 93c6cbbacf16e3d06b93fd69dd88d74bceb47e65..fbe0b3cb4b319602c678109766f4808fe92ee823 100644 (file)
@@ -548,6 +548,8 @@ extern "C" {
   #define F_status_instance_too_many_s        "F_instance_too_many"
   #define F_status_interrupt_s                "F_interrupt"
   #define F_status_interrupt_not_s            "F_interrupt_not"
+  #define F_status_is_s                       "F_is"
+  #define F_status_is_not_s                   "F_is_not"
   #define F_status_keep_s                     "F_keep"
   #define F_status_keep_not_s                 "F_keep_not"
   #define F_status_known_s                    "F_known"
@@ -1148,6 +1150,8 @@ extern "C" {
   #define F_status_instance_too_many_s_length        19
   #define F_status_interrupt_s_length                11
   #define F_status_interrupt_not_s_length            15
+  #define F_status_is_s_length                       8
+  #define F_status_is_not_s_length                   12
   #define F_status_keep_s_length                     6
   #define F_status_keep_not_s_length                 10
   #define F_status_known_s_length                    7
@@ -1750,6 +1754,8 @@ extern "C" {
   extern const f_string_static_t f_status_instance_too_many_s;
   extern const f_string_static_t f_status_interrupt_s;
   extern const f_string_static_t f_status_interrupt_not_s;
+  extern const f_string_static_t f_status_is_s;
+  extern const f_string_static_t f_status_is_not_s;
   extern const f_string_static_t f_status_keep_s;
   extern const f_string_static_t f_status_keep_not_s;
   extern const f_string_static_t f_status_known_s;
index 4545b0e87d8343d7953a914259809d82c083d2a8..653add93ce4fc94d2a8687ab0a7e8c9ba0374463 100644 (file)
@@ -414,6 +414,8 @@ void test__f_status_string_to__works(void **state) {
     F_instance_too_many,
     F_interrupt,
     F_interrupt_not,
+    F_is,
+    F_is_not,
     F_keep,
     F_keep_not,
     F_known,
@@ -1083,6 +1085,8 @@ void test__f_status_string_to__works(void **state) {
     f_status_instance_too_many_s,
     f_status_interrupt_s,
     f_status_interrupt_not_s,
+    f_status_is_s,
+    f_status_is_not_s,
     f_status_keep_s,
     f_status_keep_not_s,
     f_status_known_s,
@@ -1367,7 +1371,7 @@ void test__f_status_string_to__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 662; ++i) {
+  for (uint16_t i = 0; i < 664; ++i) {
 
     f_string_static_t result = f_string_static_t_initialize;
 
index 595da54cf83b017d6883cc71e8b629b1d007f302..8cee17432c62c046cff3cf530e33e3a696c7b00d 100644 (file)
@@ -2341,6 +2341,18 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_is_s) == F_equal_to) {
+      *code = F_is;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_is_not_s) == F_equal_to) {
+      *code = F_is_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_keep_s) == F_equal_to) {
       *code = F_keep;
 
index 7d901be2e13396cf216ed814867f1ad0b53e2163..13b9e5bec85f2fe7dc80175ad010e32dfcd08ac4 100644 (file)
@@ -430,6 +430,8 @@ void test__fl_status_string_from__works(void **state) {
     F_instance_too_many,
     F_interrupt,
     F_interrupt_not,
+    F_is,
+    F_is_not,
     F_keep,
     F_keep_not,
     F_known,
@@ -1099,6 +1101,8 @@ void test__fl_status_string_from__works(void **state) {
     f_status_instance_too_many_s,
     f_status_interrupt_s,
     f_status_interrupt_not_s,
+    f_status_is_s,
+    f_status_is_not_s,
     f_status_keep_s,
     f_status_keep_not_s,
     f_status_known_s,
@@ -1383,7 +1387,7 @@ void test__fl_status_string_from__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 662; ++i) {
+  for (uint16_t i = 0; i < 664; ++i) {
 
     f_status_t result = F_okay;