]> Kevux Git Server - fll/commitdiff
Feature: Add F_lock_critical, F_lock_read_write, F_lock_release, F_lock_signal, F_loc...
authorKevin Day <Kevin@kevux.org>
Thu, 9 Oct 2025 01:51:28 +0000 (20:51 -0500)
committerKevin Day <Kevin@kevux.org>
Thu, 9 Oct 2025 01:51:28 +0000 (20:51 -0500)
Add additional lock related codes to standardize more options for more fine tuned status control when dealing with locking.

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 89aba50fdad0600a391eb26858e773b629ec31ad..3dd4ec3a0e3373bd9cabf01f54ec3b806147140f 100644 (file)
@@ -543,13 +543,25 @@ extern "C" {
     F_local,
     F_local_not,
     F_lock,
+    F_lock_critical,
+    F_lock_critical_not,
     F_lock_mutex,
     F_lock_mutex_not,
     F_lock_not,
     F_lock_read,
     F_lock_read_not,
+    F_lock_read_write,
+    F_lock_read_write_not,
+    F_lock_release,
+    F_lock_release_not,
+    F_lock_signal,
+    F_lock_signal_not,
     F_lock_spin,
     F_lock_spin_not,
+    F_lock_time,
+    F_lock_time_not,
+    F_lock_wait,
+    F_lock_wait_not,
     F_lock_write,
     F_lock_write_not,
     F_loop,
index 26c22a4c25d769f35bcf32e1e8514ff5ea5ab48a..3ca070513ae3eb37ab94a165c4ead3485cd9a0ad 100644 (file)
@@ -412,13 +412,25 @@ extern "C" {
   const f_string_static_t f_status_local_s = macro_f_string_static_t_initialize_1(F_status_local_s, 0, F_status_local_s_length);
   const f_string_static_t f_status_local_not_s = macro_f_string_static_t_initialize_1(F_status_local_not_s, 0, F_status_local_not_s_length);
   const f_string_static_t f_status_lock_s = macro_f_string_static_t_initialize_1(F_status_lock_s, 0, F_status_lock_s_length);
+  const f_string_static_t f_status_lock_critical_s = macro_f_string_static_t_initialize_1(F_status_lock_critical_s, 0, F_status_lock_critical_s_length);
+  const f_string_static_t f_status_lock_critical_not_s = macro_f_string_static_t_initialize_1(F_status_lock_critical_not_s, 0, F_status_lock_critical_not_s_length);
   const f_string_static_t f_status_lock_mutex_s = macro_f_string_static_t_initialize_1(F_status_lock_mutex_s, 0, F_status_lock_mutex_s_length);
   const f_string_static_t f_status_lock_mutex_not_s = macro_f_string_static_t_initialize_1(F_status_lock_mutex_not_s, 0, F_status_lock_mutex_not_s_length);
   const f_string_static_t f_status_lock_not_s = macro_f_string_static_t_initialize_1(F_status_lock_not_s, 0, F_status_lock_not_s_length);
   const f_string_static_t f_status_lock_read_s = macro_f_string_static_t_initialize_1(F_status_lock_read_s, 0, F_status_lock_read_s_length);
   const f_string_static_t f_status_lock_read_not_s = macro_f_string_static_t_initialize_1(F_status_lock_read_not_s, 0, F_status_lock_read_not_s_length);
+  const f_string_static_t f_status_lock_read_write_s = macro_f_string_static_t_initialize_1(F_status_lock_read_write_s, 0, F_status_lock_read_write_s_length);
+  const f_string_static_t f_status_lock_read_write_not_s = macro_f_string_static_t_initialize_1(F_status_lock_read_write_not_s, 0, F_status_lock_read_write_not_s_length);
+  const f_string_static_t f_status_lock_release_s = macro_f_string_static_t_initialize_1(F_status_lock_release_s, 0, F_status_lock_release_s_length);
+  const f_string_static_t f_status_lock_release_not_s = macro_f_string_static_t_initialize_1(F_status_lock_release_not_s, 0, F_status_lock_release_not_s_length);
+  const f_string_static_t f_status_lock_signal_s = macro_f_string_static_t_initialize_1(F_status_lock_signal_s, 0, F_status_lock_signal_s_length);
+  const f_string_static_t f_status_lock_signal_not_s = macro_f_string_static_t_initialize_1(F_status_lock_signal_not_s, 0, F_status_lock_signal_not_s_length);
   const f_string_static_t f_status_lock_spin_s = macro_f_string_static_t_initialize_1(F_status_lock_spin_s, 0, F_status_lock_spin_s_length);
   const f_string_static_t f_status_lock_spin_not_s = macro_f_string_static_t_initialize_1(F_status_lock_spin_not_s, 0, F_status_lock_spin_not_s_length);
+  const f_string_static_t f_status_lock_time_s = macro_f_string_static_t_initialize_1(F_status_lock_time_s, 0, F_status_lock_time_s_length);
+  const f_string_static_t f_status_lock_time_not_s = macro_f_string_static_t_initialize_1(F_status_lock_time_not_s, 0, F_status_lock_time_not_s_length);
+  const f_string_static_t f_status_lock_wait_s = macro_f_string_static_t_initialize_1(F_status_lock_wait_s, 0, F_status_lock_wait_s_length);
+  const f_string_static_t f_status_lock_wait_not_s = macro_f_string_static_t_initialize_1(F_status_lock_wait_not_s, 0, F_status_lock_wait_not_s_length);
   const f_string_static_t f_status_lock_write_s = macro_f_string_static_t_initialize_1(F_status_lock_write_s, 0, F_status_lock_write_s_length);
   const f_string_static_t f_status_lock_write_not_s = macro_f_string_static_t_initialize_1(F_status_lock_write_not_s, 0, F_status_lock_write_not_s_length);
   const f_string_static_t f_status_loop_s = macro_f_string_static_t_initialize_1(F_status_loop_s, 0, F_status_loop_s_length);
@@ -2739,6 +2751,16 @@ extern "C" {
 
         break;
 
+      case F_lock_critical:
+        *name = f_status_lock_critical_s;
+
+        break;
+
+      case F_lock_critical_not:
+        *name = f_status_lock_critical_not_s;
+
+        break;
+
       case F_lock_mutex:
         *name = f_status_lock_mutex_s;
 
@@ -2764,6 +2786,36 @@ extern "C" {
 
         break;
 
+      case F_lock_read_write:
+        *name = f_status_lock_read_write_s;
+
+        break;
+
+      case F_lock_read_write_not:
+        *name = f_status_lock_read_write_not_s;
+
+        break;
+
+      case F_lock_release:
+        *name = f_status_lock_release_s;
+
+        break;
+
+      case F_lock_release_not:
+        *name = f_status_lock_release_not_s;
+
+        break;
+
+      case F_lock_signal:
+        *name = f_status_lock_signal_s;
+
+        break;
+
+      case F_lock_signal_not:
+        *name = f_status_lock_signal_not_s;
+
+        break;
+
       case F_lock_spin:
         *name = f_status_lock_spin_s;
 
@@ -2774,6 +2826,26 @@ extern "C" {
 
         break;
 
+      case F_lock_time:
+        *name = f_status_lock_time_s;
+
+        break;
+
+      case F_lock_time_not:
+        *name = f_status_lock_time_not_s;
+
+        break;
+
+      case F_lock_wait:
+        *name = f_status_lock_wait_s;
+
+        break;
+
+      case F_lock_wait_not:
+        *name = f_status_lock_wait_not_s;
+
+        break;
+
       case F_lock_write:
         *name = f_status_lock_write_s;
 
index b5746299d8f3298b15fbf1ef03fda2c4d219b7e1..8a5e0a77912c8cdd57d3029b08ddaf718d690671 100644 (file)
@@ -571,13 +571,25 @@ extern "C" {
   #define F_status_local_s                    "F_local"
   #define F_status_local_not_s                "F_local_not"
   #define F_status_lock_s                     "F_lock"
+  #define F_status_lock_critical_s            "F_lock_critical"
+  #define F_status_lock_critical_not_s        "F_lock_critical_not"
   #define F_status_lock_mutex_s               "F_lock_mutex"
   #define F_status_lock_mutex_not_s           "F_lock_mutex_not"
   #define F_status_lock_not_s                 "F_lock_not"
   #define F_status_lock_read_s                "F_lock_read"
   #define F_status_lock_read_not_s            "F_lock_read_not"
+  #define F_status_lock_read_write_s          "F_lock_read_write"
+  #define F_status_lock_read_write_not_s      "F_lock_read_write_not"
+  #define F_status_lock_release_s             "F_lock_release"
+  #define F_status_lock_release_not_s         "F_lock_release_not"
+  #define F_status_lock_signal_s              "F_lock_signal"
+  #define F_status_lock_signal_not_s          "F_lock_signal_not"
   #define F_status_lock_spin_s                "F_lock_spin"
   #define F_status_lock_spin_not_s            "F_lock_spin_not"
+  #define F_status_lock_time_s                "F_lock_time"
+  #define F_status_lock_time_not_s            "F_lock_time_not"
+  #define F_status_lock_wait_s                "F_lock_wait"
+  #define F_status_lock_wait_not_s            "F_lock_wait_not"
   #define F_status_lock_write_s               "F_lock_write"
   #define F_status_lock_write_not_s           "F_lock_write_not"
   #define F_status_loop_s                     "F_loop"
@@ -1187,13 +1199,25 @@ extern "C" {
   #define F_status_local_s_length                    7
   #define F_status_local_not_s_length                11
   #define F_status_lock_s_length                     6
+  #define F_status_lock_critical_s_length            15
+  #define F_status_lock_critical_not_s_length        19
   #define F_status_lock_mutex_s_length               12
   #define F_status_lock_mutex_not_s_length           16
   #define F_status_lock_not_s_length                 10
   #define F_status_lock_read_s_length                11
   #define F_status_lock_read_not_s_length            15
+  #define F_status_lock_read_write_s_length          17
+  #define F_status_lock_read_write_not_s_length      21
+  #define F_status_lock_release_s_length             14
+  #define F_status_lock_release_not_s_length         18
+  #define F_status_lock_signal_s_length              13
+  #define F_status_lock_signal_not_s_length          17
   #define F_status_lock_spin_s_length                11
   #define F_status_lock_spin_not_s_length            15
+  #define F_status_lock_time_s_length                11
+  #define F_status_lock_time_not_s_length            15
+  #define F_status_lock_wait_s_length                11
+  #define F_status_lock_wait_not_s_length            15
   #define F_status_lock_write_s_length               12
   #define F_status_lock_write_not_s_length           16
   #define F_status_loop_s_length                     6
@@ -1805,13 +1829,25 @@ extern "C" {
   extern const f_string_static_t f_status_local_s;
   extern const f_string_static_t f_status_local_not_s;
   extern const f_string_static_t f_status_lock_s;
+  extern const f_string_static_t f_status_lock_critical_s;
+  extern const f_string_static_t f_status_lock_critical_not_s;
   extern const f_string_static_t f_status_lock_mutex_s;
   extern const f_string_static_t f_status_lock_mutex_not_s;
   extern const f_string_static_t f_status_lock_not_s;
   extern const f_string_static_t f_status_lock_read_s;
   extern const f_string_static_t f_status_lock_read_not_s;
+  extern const f_string_static_t f_status_lock_read_write_s;
+  extern const f_string_static_t f_status_lock_read_write_not_s;
+  extern const f_string_static_t f_status_lock_release_s;
+  extern const f_string_static_t f_status_lock_release_not_s;
+  extern const f_string_static_t f_status_lock_signal_s;
+  extern const f_string_static_t f_status_lock_signal_not_s;
   extern const f_string_static_t f_status_lock_spin_s;
   extern const f_string_static_t f_status_lock_spin_not_s;
+  extern const f_string_static_t f_status_lock_time_s;
+  extern const f_string_static_t f_status_lock_time_not_s;
+  extern const f_string_static_t f_status_lock_wait_s;
+  extern const f_string_static_t f_status_lock_wait_not_s;
   extern const f_string_static_t f_status_lock_write_s;
   extern const f_string_static_t f_status_lock_write_not_s;
   extern const f_string_static_t f_status_loop_s;
index 767b40add4a604f8d112a7c81c895302662c2f80..87687ba0f7259e55e67617eaa3a9654227480672 100644 (file)
@@ -437,13 +437,25 @@ void test__f_status_string_to__works(void **state) {
     F_local,
     F_local_not,
     F_lock,
+    F_lock_critical,
+    F_lock_critical_not,
     F_lock_mutex,
     F_lock_mutex_not,
     F_lock_not,
     F_lock_read,
     F_lock_read_not,
+    F_lock_read_write,
+    F_lock_read_write_not,
+    F_lock_release,
+    F_lock_release_not,
+    F_lock_signal,
+    F_lock_signal_not,
     F_lock_spin,
     F_lock_spin_not,
+    F_lock_time,
+    F_lock_time_not,
+    F_lock_wait,
+    F_lock_wait_not,
     F_lock_write,
     F_lock_write_not,
     F_loop,
@@ -1122,13 +1134,25 @@ void test__f_status_string_to__works(void **state) {
     f_status_local_s,
     f_status_local_not_s,
     f_status_lock_s,
+    f_status_lock_critical_s,
+    f_status_lock_critical_not_s,
     f_status_lock_mutex_s,
     f_status_lock_mutex_not_s,
     f_status_lock_not_s,
     f_status_lock_read_s,
     f_status_lock_read_not_s,
+    f_status_lock_read_write_s,
+    f_status_lock_read_write_not_s,
+    f_status_lock_release_s,
+    f_status_lock_release_not_s,
+    f_status_lock_signal_s,
+    f_status_lock_signal_not_s,
     f_status_lock_spin_s,
     f_status_lock_spin_not_s,
+    f_status_lock_time_s,
+    f_status_lock_time_not_s,
+    f_status_lock_wait_s,
+    f_status_lock_wait_not_s,
     f_status_lock_write_s,
     f_status_lock_write_not_s,
     f_status_loop_s,
@@ -1399,7 +1423,7 @@ void test__f_status_string_to__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 678; ++i) {
+  for (uint16_t i = 0; i < 690; ++i) {
 
     f_string_static_t result = f_string_static_t_initialize;
 
index 0671b55f3522a28acbead33610a59b34665d425e..809d34784680c48c13e64029bbbe91393664b5a0 100644 (file)
@@ -2479,6 +2479,18 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_lock_critical_s) == F_equal_to) {
+      *code = F_lock_critical;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_critical_not_s) == F_equal_to) {
+      *code = F_lock_critical_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_lock_mutex_s) == F_equal_to) {
       *code = F_lock_mutex;
 
@@ -2509,6 +2521,42 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_lock_read_write_s) == F_equal_to) {
+      *code = F_lock_read_write;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_read_write_not_s) == F_equal_to) {
+      *code = F_lock_read_write_not;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_release_s) == F_equal_to) {
+      *code = F_lock_release;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_release_not_s) == F_equal_to) {
+      *code = F_lock_release_not;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_signal_s) == F_equal_to) {
+      *code = F_lock_signal;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_signal_not_s) == F_equal_to) {
+      *code = F_lock_signal_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_lock_spin_s) == F_equal_to) {
       *code = F_lock_spin;
 
@@ -2521,6 +2569,30 @@ extern "C" {
       return F_okay;
     }
 
+    if (f_compare_dynamic(name, f_status_lock_time_s) == F_equal_to) {
+      *code = F_lock_time;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_time_not_s) == F_equal_to) {
+      *code = F_lock_time_not;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_wait_s) == F_equal_to) {
+      *code = F_lock_wait;
+
+      return F_okay;
+    }
+
+    if (f_compare_dynamic(name, f_status_lock_wait_not_s) == F_equal_to) {
+      *code = F_lock_wait_not;
+
+      return F_okay;
+    }
+
     if (f_compare_dynamic(name, f_status_lock_write_s) == F_equal_to) {
       *code = F_lock_write;
 
index db5db1c0e8f8498432bfdd23a2140fc8bae10d46..531f0742770fcc89990bb0068c1d0fb05945199d 100644 (file)
@@ -453,13 +453,25 @@ void test__fl_status_string_from__works(void **state) {
     F_local,
     F_local_not,
     F_lock,
+    F_lock_critical,
+    F_lock_critical_not,
     F_lock_mutex,
     F_lock_mutex_not,
     F_lock_not,
     F_lock_read,
     F_lock_read_not,
+    F_lock_read_write,
+    F_lock_read_write_not,
+    F_lock_release,
+    F_lock_release_not,
+    F_lock_signal,
+    F_lock_signal_not,
     F_lock_spin,
     F_lock_spin_not,
+    F_lock_time,
+    F_lock_time_not,
+    F_lock_wait,
+    F_lock_wait_not,
     F_lock_write,
     F_lock_write_not,
     F_loop,
@@ -1138,13 +1150,25 @@ void test__fl_status_string_from__works(void **state) {
     f_status_local_s,
     f_status_local_not_s,
     f_status_lock_s,
+    f_status_lock_critical_s,
+    f_status_lock_critical_not_s,
     f_status_lock_mutex_s,
     f_status_lock_mutex_not_s,
     f_status_lock_not_s,
     f_status_lock_read_s,
     f_status_lock_read_not_s,
+    f_status_lock_read_write_s,
+    f_status_lock_read_write_not_s,
+    f_status_lock_release_s,
+    f_status_lock_release_not_s,
+    f_status_lock_signal_s,
+    f_status_lock_signal_not_s,
     f_status_lock_spin_s,
     f_status_lock_spin_not_s,
+    f_status_lock_time_s,
+    f_status_lock_time_not_s,
+    f_status_lock_wait_s,
+    f_status_lock_wait_not_s,
     f_status_lock_write_s,
     f_status_lock_write_not_s,
     f_status_loop_s,
@@ -1415,7 +1439,7 @@ void test__fl_status_string_from__works(void **state) {
     f_status_status_code_last_s,
   };
 
-  for (uint16_t i = 0; i < 678; ++i) {
+  for (uint16_t i = 0; i < 690; ++i) {
 
     f_status_t result = F_okay;