aboutsummaryrefslogtreecommitdiffstats
path: root/ccl_test.go
AgeCommit message (Collapse)AuthorFilesLines
2025-12-01Fix error messages and add testsRose Hogenson1-29/+52
2025-12-01Allow octal and hex escapes to take fewer digitsRose Hogenson1-3/+20
2025-12-01Get rid of struct tokenRose Hogenson1-1/+1
2025-11-24Disallow control characters in stringsRose Hogenson1-0/+14
2025-11-24Only allow "true" and "false" for boolRose Hogenson1-14/+14
2025-11-24Don't allow decoding bool as intRose Hogenson1-16/+24
2025-11-18Holy shit fuzzing is so coolRose Hogenson1-0/+170
2025-10-30Add a helper function for readabilityRose Hogenson1-3/+7
2025-10-30Set the lexer as a field on parserRose Hogenson1-1/+1
goos: linux goarch: amd64 pkg: roseh.moe/pkg/ccl cpu: AMD Ryzen 9 5900X 12-Core Processor │ baseline.txt │ new.txt │ │ sec/op │ sec/op vs base │ Parse-24 4.808µ ± 0% 4.739µ ± 0% -1.44% (p=0.000 n=20)
2025-10-30Use a classic struct iterator instead of iter.PullRose Hogenson1-1/+6
iter.Pull doesn't provide much value here. Actually the lexer is probably simpler this way, and iter.Pull also destroys stack traces for panics in the lexer. Ouch goos: linux goarch: amd64 pkg: roseh.moe/pkg/ccl cpu: AMD Ryzen 9 5900X 12-Core Processor │ baseline.txt │ itern't.txt │ │ sec/op │ sec/op vs base │ Lex-24 1.436µ ± 0% 1.320µ ± 0% -8.05% (p=0.000 n=20) Parse-24 7.846µ ± 0% 4.801µ ± 0% -38.82% (p=0.000 n=20) geomean 3.356µ 2.517µ -24.99%
2025-10-30Allow all values to be pointersRose Hogenson1-0/+19
This solves the issue of whether the field was populated or not, at the expense of some horrible memory patterns. But on the plus side it doesn't require any extra API so we might as well allow it.
2025-10-30Remove the regexesRose Hogenson1-0/+26
Wow it doesn't look good for regex goos: linux goarch: amd64 pkg: roseh.moe/pkg/ccl cpu: AMD Ryzen 9 5900X 12-Core Processor │ baseline.txt │ regexn't.txt │ │ sec/op │ sec/op vs base │ Lex-24 8.625µ ± 1% 1.429µ ± 0% -83.43% (p=0.000 n=20) Parse-24 18.305µ ± 0% 8.856µ ± 0% -51.62% (p=0.000 n=20) geomean 12.57µ 3.557µ -71.69%
2025-10-30Add benchmarkRose Hogenson1-0/+57
2025-10-29Fix repeated fields behaviorRose Hogenson1-7/+22
2025-10-28Rename to cclRose Hogenson1-1/+1
It stands for "cute configuration language," but idk if that's really important
2025-10-28Rename files to cclRose Hogenson1-0/+610