ladybird/Tests/LibUnicode
Timothy Flynn 5cf818e305 LibUnicode: Replace case transformations and comparison with ICUs
There are a couple of differences here due to using ICU:

1. Titlecasing behaves slightly differently. We previously transformed
   "123dollars" to "123Dollars", as we would use word segmentation to
   split a string into words, then transform the first cased character
   to titlecase. ICU doesn't go quite that far, and leaves the string
   as "123dollars". While this is a behavior change, the only user of
   this API is the `text-transform: capitalize;` CSS rule, and we now
   match the behavior of other browsers.

2. There isn't an API to compare strings with case insensitivity without
   allocating case-folded strings for both the left- and right-hand-side
   strings. Our implementation was previously allocation-free; however,
   in a benchmark, ICU is still ~1.4x faster.
2024-06-20 10:59:55 +02:00
..
CMakeLists.txt LibUnicode: Replace IDNA ASCII conversion with ICU 2024-06-18 21:07:56 +02:00
TestEmoji.cpp LibUnicode: Detect ZWJ sequences when filtering by emoji presentation 2023-03-05 20:21:57 +01:00
TestIDNA.cpp LibUnicode: Add IDNA::to_ascii 2023-12-10 08:04:58 -05:00
TestSegmentation.cpp LibUnicode: Update to Unicode version 15.1.0 2023-09-15 18:30:26 +02:00
TestUnicodeCharacterTypes.cpp LibUnicode: Replace case transformations and comparison with ICUs 2024-06-20 10:59:55 +02:00
TestUnicodeNormalization.cpp LibUnicode+LibJS: Stop propagating small OOM errors from normalization 2023-09-09 13:03:25 -04:00