]> Kevux Git Server - fll/commitdiff
Update: add missing string compare functions.
authorKevin Day <thekevinday@gmail.com>
Sun, 12 Jul 2020 21:16:38 +0000 (16:16 -0500)
committerKevin Day <thekevinday@gmail.com>
Sun, 12 Jul 2020 21:16:38 +0000 (16:16 -0500)
These should have been implemented for completeness but were not.

level_1/fl_string/c/string.c
level_1/fl_string/c/string.h

index bd855c9403a563175e69cfd4dc7aa160b627f990..6aff43927b1c4a7945a16c32379bc85ee13e3829 100644 (file)
@@ -220,12 +220,24 @@ extern "C" {
   }
 #endif // _di_fl_string_dynamic_compare_
 
+#ifndef _di_fl_string_dynamic_compare_string_
+  f_return_status fl_string_dynamic_compare_string(const f_string string1, const f_string_static string2, const f_string_length length1) {
+    return private_fl_string_compare(string1, string2.string, 0, 0, length1, string2.used);
+  }
+#endif // _di_fl_string_dynamic_compare_string_
+
 #ifndef _di_fl_string_dynamic_compare_trim_
   f_return_status fl_string_dynamic_compare_trim(const f_string_static string1, const f_string_static string2) {
     return private_fl_string_compare_trim(string1.string, string2.string, 0, 0, string1.used, string2.used);
   }
 #endif // _di_fl_string_dynamic_compare_trim_
 
+#ifndef _di_fl_string_dynamic_compare_trim_string_
+  f_return_status fl_string_dynamic_compare_trim_string(const f_string string1, const f_string_static string2, const f_string_length length1) {
+    return private_fl_string_compare_trim(string1, string2.string, 0, 0, length1, string2.used);
+  }
+#endif // _di_fl_string_dynamic_compare_trim_string_
+
 #ifndef _di_fl_string_dynamic_mash_
   f_return_status fl_string_dynamic_mash(const f_string glue, const f_string_length glue_length, const f_string_static source, f_string_dynamic *destination) {
     #ifndef _di_level_1_parameter_checking_
index 9d2909a040af253ab5ddab4816bf512f395fdd08..904d97398bfe6e99290807e0d87fa25910caee3a 100644 (file)
@@ -289,6 +289,35 @@ extern "C" {
 /**
  * Compare two strings, similar to strncmp().
  *
+ * This operates with the first string being a traditional string.
+ *
+ * This does not stop on NULL.
+ * NULL characters are ignored.
+ * Ignores leading and trailing whitespace.
+ *
+ * @param string1
+ *   String to compare.
+ * @param string2
+ *   String to compare.
+ * @param length1
+ *   The length of string1.
+ *
+ * @return
+ *   F_equal_to when both strings equal.
+ *   F_equal_to_not when both strings do not equal.
+ *   F_parameter (with error bit) if a parameter is invalid.
+ *
+ *   Errors from (with error bit): f_utf_is_whitespace().
+ *
+ * @see f_utf_is_whitespace()
+ */
+#ifndef _di_fl_string_dynamic_compare_string_
+  extern f_return_status fl_string_dynamic_compare_string(const f_string string1, const f_string_static string2, const f_string_length length1);
+#endif // _di_fl_string_dynamic_compare_string_
+
+/**
+ * Compare two strings, similar to strncmp().
+ *
  * This does not stop on NULL.
  * NULL characters are ignored.
  * Ignores leading and trailing whitespace.
@@ -312,6 +341,35 @@ extern "C" {
 #endif // _di_fl_string_dynamic_compare_trim_
 
 /**
+ * Compare two strings, similar to strncmp().
+ *
+ * This operates with the first string being a traditional string.
+ *
+ * This does not stop on NULL.
+ * NULL characters are ignored.
+ * Ignores leading and trailing whitespace.
+ *
+ * @param string1
+ *   String to compare.
+ * @param string2
+ *   String to compare.
+ * @param length1
+ *   The length of string1.
+ *
+ * @return
+ *   F_equal_to when both strings equal.
+ *   F_equal_to_not when both strings do not equal.
+ *   F_parameter (with error bit) if a parameter is invalid.
+ *
+ *   Errors from (with error bit): f_utf_is_whitespace().
+ *
+ * @see f_utf_is_whitespace()
+ */
+#ifndef _di_fl_string_dynamic_compare_trim_string_
+  extern f_return_status fl_string_dynamic_compare_trim_string(const f_string string1, const f_string_static string2, const f_string_length length1);
+#endif // _di_fl_string_dynamic_compare_trim_string_
+
+/**
  * Append the source string onto the destination with the glue in between.
  *
  * If the destination string is empty, then no glue is appended.