summaryrefslogtreecommitdiff
path: root/codegen (unfollow)
Commit message (Collapse)AuthorFilesLines
6 daysFix stage names in codegen/gencatGravatar Sam Atman1-2/+2
11 daysDe-allocate Emoji moduleGravatar Sam Atman1-21/+35
11 daysDelete upper and lower.zigGravatar Sam Atman2-112/+0
12 daysTeasing out canonicalizationGravatar Sam Atman1-23/+159
After coping with a spuriously broken autohash for awhile, I got the one remaining hash table moved into memory, so there's no further reason to put up with allocation of basic structures. So that's nice.
12 daysRest of the 'easy' stuffGravatar Sam Atman6-37/+253
This gets us up to feature parity with Jacob's work. I want to eliminate that last allocation using the comptime hash map, and then see about eliminating allocations from case comparisons as well. That should just about do it.
12 daysNormalization and case foldingGravatar Sam Atman5-57/+193
Both of which deserve some further attention.
12 daysConvert Words module to no-allocationGravatar Sam Atman1-6/+18
12 daysConvert Graphemes to static allocationGravatar Sam Atman2-16/+44
And DisplayWidth, although untested at present. The plan is to just work through the codegen / module pairings, and move tests over until everything is covered.
2025-11-08Use takeDelimiterInclusive to support Zig 0.15.2Gravatar Jay17-21/+42
2025-09-14Embed data files in scripts rather than relying on filesystem access for ↵Gravatar Michael Chaten17-130/+47
easier packaging
2025-09-14Update codebase to Zig 0.15.1.Gravatar Michael Chaten17-268/+324
Removes compression support
2025-06-24Add Emoji module and codegen/emojiGravatar Jacob Sandlund1-0/+146
2025-05-15Add WordBreakPropertyDataGravatar Sam Atman1-0/+146
Passes some simple lookup tests.
2025-04-30Unicode 16.0Gravatar Sam Atman1-0/+7
Went smoothly, needed to add some scripts and adjust the magic numbers, but other than that, all set.
2025-03-20Add c0 and c1 control width optionsGravatar Sam Atman1-8/+8
This allows a build of DisplayWidth to give characters in those classes a width, for cases where they'll be printed with a substitute in the final display. It also raises the size of possible characters from an i3 to an i4, to accommodate printing C1s as e.g. <80> or \u{80}.
2024-06-27FoldData: Minimize Changes_When_Casefolded dataGravatar Ryan Liptak1-3/+18
Only a few codepoints have a mapping in CaseFolding.txt but do not have the Changes_When_Casefolded property set. So, FoldData can just store a list of those particular codepoints and then re-use the encoded CaseFolding.txt data alongside it in order to implement changesWhenCaseFolded. This reduces the size of fold.bin.z from 4,387 bytes (4.28KiB) to 1,165 bytes (1.13KiB). This also seemingly introduced a very slight performance regression in zg_caseless. Before: zg CaseFold.compatCaselessMatch: result: 626, took: 258ns zg CaseFold.canonCaselessMatch: result: 626, took: 129ns After: zg CaseFold.compatCaselessMatch: result: 626, took: 263ns zg CaseFold.canonCaselessMatch: result: 626, took: 131ns
2024-06-26Implements new case fold data encoding by @sqeek502 #8Gravatar Jose Colon Rodriguez1-5/+6
2024-06-26Added changes when casefolded backGravatar Jose Colon Rodriguez1-31/+49
2024-06-26Implemented sqeek502s case foldGravatar Jose Colon Rodriguez1-97/+192
2024-05-19Updated build.zig b.pathGravatar Jose Colon Rodriguez1-3/+0
2024-05-03Removed emoji modifier display width = 0 case.Gravatar Jose Colon Rodriguez1-1/+1
2024-03-31Updated READMEGravatar Jose Colon Rodriguez16-48/+32
2024-03-28PropsData and errdefers for init fnsGravatar Jose Colon Rodriguez2-0/+275
2024-03-27ScriptsData and made all Datas constGravatar Jose Colon Rodriguez1-0/+309
2024-03-27Friendly general category methodsGravatar Jose Colon Rodriguez1-30/+30
2024-03-26Using diff for lowercase mappingGravatar Jose Colon Rodriguez1-7/+7
2024-03-26Using diff for uppercase mappingGravatar Jose Colon Rodriguez1-7/+7
2024-03-26Removed title case processingGravatar Jose Colon Rodriguez1-58/+0
2024-03-25CaseDataGravatar Jose Colon Rodriguez5-25/+330
2024-03-24NumericDataGravatar Jose Colon Rodriguez1-0/+141
2024-03-01Moved case fold stuff to src/Caser.zigGravatar Jose Colon Rodriguez6-6/+6
2024-03-01Changes when case folded check; 20ms fasterGravatar Jose Colon Rodriguez1-3/+51
2024-03-01Normalizer.eqlIgnoreCase compatibility caseless matchingGravatar Jose Colon Rodriguez1-0/+76
2024-02-27General Category with GenCatDataGravatar Jose Colon Rodriguez1-0/+172
2024-02-27Using NormPropsData in NormData; No Ziglyph deps in NOrmalizerGravatar Jose Colon Rodriguez1-0/+135
2024-02-27Using HangulData in NormDataGravatar Jose Colon Rodriguez1-0/+134
2024-02-26Using NormData nfkdGravatar Jose Colon Rodriguez1-0/+65
2024-02-26Using NormData and CanonData in NormalizerGravatar Jose Colon Rodriguez1-0/+68
2024-02-26Using separate data struct model.Gravatar Jose Colon Rodriguez3-76/+40
2024-02-20Replaced ccc_map with table. 20ms fasterGravatar Jose Colon Rodriguez1-0/+128
2024-02-19Cleaned up directory structureGravatar Jose Colon Rodriguez2-5/+5
2024-02-18Using argsWithAllocator for WindowsGravatar Jose Colon Rodriguez2-2/+4
2024-02-18Added cjk build option to set ambiguous width to 2 at build timeGravatar Jose Colon Rodriguez1-1/+6
2024-02-16display_width with tableGravatar Jose Colon Rodriguez1-0/+243
2024-02-15Removed codegen/indic.zigGravatar Jose Colon Rodriguez1-164/+0
2024-02-15New single byte props tableGravatar Jose Colon Rodriguez3-236/+280
2024-02-14emoji direct array accessGravatar Jose Colon Rodriguez1-13/+2
2024-02-14gbp and indic direct array accessGravatar Jose Colon Rodriguez2-84/+8
2024-02-14Passing Unicode 15.1.0 Grapheme Break TestsGravatar Jose Colon Rodriguez1-0/+188
2024-02-14Code reorg; Added UCDGravatar Jose Colon Rodriguez2-0/+299