]> Kevux Git Server - fll/commit
Progress: f_utf unit tests and make significant change Unicode digit/decimal functions.
authorKevin Day <thekevinday@gmail.com>
Wed, 22 Jun 2022 04:19:36 +0000 (23:19 -0500)
committerKevin Day <thekevinday@gmail.com>
Wed, 22 Jun 2022 04:19:36 +0000 (23:19 -0500)
commit4b14d2ed36e680bcb361dfd0ad7b75242c0d6cec
treeb1ca96856f08b8325589c3ccdebba5698ba6ec8e
parentacfa8d7f23c2d8fc8b26793a18789e8c9e28b147
Progress: f_utf unit tests and make significant change Unicode digit/decimal functions.

The controller program is using f_utf_is_alphabetic_decimal().
The previous functionality of that function is now handled by f_utf_is_alphabetic_digit().

I reconsidered some of the design I implemented in the previous commit (e696e3941592c6910f2f8ecc87a698d4f618c3b4).
The design of reading the value for the variable "value" and then saving to it is too much complexity.
Simplify the design and just expect the caller to read the "value" and decide if it is or is not in range.

Get rid of the "*_is_decimal()" functions.
The "*_is_digit()" functions work like the "*_is_decimal()" functions did.
I am avoiding the term "decimal" because it refers to base-10.
The term "digit" is a bit more general.
The only downside is that fractions might fall under "digit" (really they are two digits), which this function currently does not handle.
The "*_is_numeric()" functions will recognize fractions.

I didn't get as far as I wanted to.
The number of Unicode values to assign has worn me down.
The tests processing is not complete and I haven't gone back and done my normal review.

I tried to keep the "value" as small as possible, but unsurprisingly some language out there has a digit that represents billions.
I am forced to use a 64-bit data type for this.
45 files changed:
build/level_0/settings
build/monolithic/settings
level_0/f_conversion/c/conversion.c
level_0/f_conversion/c/conversion.h
level_0/f_utf/c/private-utf.c
level_0/f_utf/c/private-utf.h
level_0/f_utf/c/private-utf_alphabetic.c
level_0/f_utf/c/private-utf_alphabetic.h
level_0/f_utf/c/private-utf_decimal.c [deleted file]
level_0/f_utf/c/private-utf_decimal.h [deleted file]
level_0/f_utf/c/private-utf_digit.c
level_0/f_utf/c/private-utf_digit.h
level_0/f_utf/c/private-utf_numeric.c
level_0/f_utf/c/private-utf_word.c
level_0/f_utf/c/utf/is.c
level_0/f_utf/c/utf/is.h
level_0/f_utf/c/utf/is_character.c
level_0/f_utf/c/utf/is_character.h
level_0/f_utf/data/build/settings
level_0/f_utf/data/build/settings-tests
level_0/f_utf/data/tests/bytesequences/decimal-all.txt [deleted file]
level_0/f_utf/data/tests/bytesequences/digit-all.txt
level_0/f_utf/data/tests/bytesequences/numeric-all.txt [new file with mode: 0644]
level_0/f_utf/data/tests/codepoints/decimal-all.txt [deleted file]
level_0/f_utf/data/tests/codepoints/digit-all.txt
level_0/f_utf/data/tests/codepoints/numeric-all.txt [new file with mode: 0644]
level_0/f_utf/data/tests/values/decimal-all.txt [deleted file]
level_0/f_utf/data/tests/values/digit-all.txt [new file with mode: 0644]
level_0/f_utf/tests/unit/c/data-utf.c
level_0/f_utf/tests/unit/c/data-utf.h
level_0/f_utf/tests/unit/c/test-utf-character_is_decimal.c [deleted file]
level_0/f_utf/tests/unit/c/test-utf-character_is_decimal.h [deleted file]
level_0/f_utf/tests/unit/c/test-utf-character_is_digit.c
level_0/f_utf/tests/unit/c/test-utf-is_decimal.c [deleted file]
level_0/f_utf/tests/unit/c/test-utf-is_decimal.h [deleted file]
level_0/f_utf/tests/unit/c/test-utf-is_digit.c
level_0/f_utf/tests/unit/c/test-utf.c
level_0/f_utf/tests/unit/c/test-utf.h
level_1/fl_conversion/c/private-conversion.c
level_2/fll_fss_status_string/c/fss_status_string.c
level_2/fll_fss_status_string/c/fss_status_string.h
level_2/fll_status_string/c/status_string.c
level_2/fll_status_string/c/status_string.h
level_3/controller/c/controller/private-controller.c
level_3/controller/c/controller/private-controller.h