Commit Graph

117 Commits

Author SHA1 Message Date
ef19dae3f6 Simd string2 2025-05-22 15:36:46 -04:00
ad17336997 Remove alignas(16) from tables
I don't think it makes a difference
2025-05-22 14:54:32 -04:00
23929289cb Annotate all reject code paths as unlikely 2025-05-22 14:51:55 -04:00
3682bea38a Add to corpus 2025-05-22 13:17:38 -04:00
d68c9a8ccc Pass test if one parser says overflow and the other says reject
Maybe in the future we could rerun with a bigger stack?
2025-05-22 12:57:12 -04:00
c939bc3baa Remove most usages of T_END_NUMBER 2025-05-22 12:37:08 -04:00
76e03e635b Skip past false,true,null directly if buffered 2025-05-22 12:23:09 -04:00
af07cdc8be Skip past N_INTEGER 2025-05-22 12:15:50 -04:00
3afa3b6e9a Skip N_OBJECT and N_ARRAY 2025-05-22 11:55:27 -04:00
3635f5cf18 Skip over n_string when you know it matches 2025-05-22 11:45:57 -04:00
56f6ab6566 Fuse whitespace into string 2025-05-22 11:42:05 -04:00
297d6b48f7 Fuse whitespace into object2, object3, array2, array3, colon 2025-05-22 11:38:42 -04:00
dff2120867 Remove redundant len check 2025-05-22 11:31:07 -04:00
048caa830a Fuse N_WHITESPACE into N_VALUE 2025-05-22 11:21:58 -04:00
0786d8db4c More work on c api 2025-05-22 11:00:59 -04:00
6e602d8fd5 Start working on c api 2025-05-22 10:55:15 -04:00
96ef50d52f Add to corpus 2025-05-21 17:00:05 -04:00
45029e7dfa Add to corpus 2025-05-21 16:48:01 -04:00
0b68fd1d41 Test more strides 2025-05-21 16:19:58 -04:00
611d1a07de Validate correct string data in fuzz test 2025-05-21 15:45:24 -04:00
c261b64620 Fix unintentionally disabled test 2025-05-21 14:06:43 -04:00
bde83c0b15 Write readme 2025-05-20 12:43:26 -04:00
c79b19b24f Add to corpus 2025-05-20 11:56:25 -04:00
a890ce3666 Move copying out of tight loop 2025-05-19 19:49:11 -04:00
a4d7d1f91e Loop in string2 in normal case 2025-05-19 17:50:48 -04:00
918950d7f8 Fix unescaping bug 2025-05-19 17:16:37 -04:00
4174f1c609 Add test witnessing unescaping bug 2025-05-19 17:15:56 -04:00
9a5b94e25d Remove redundant nonterminals 2025-05-19 17:02:45 -04:00
7a5b538132 Avoid some checks for len == 0 2025-05-19 16:58:01 -04:00
5df17a0d47 Consume whitespace in loop 2025-05-19 16:27:13 -04:00
ff00f3eead Fix bogus assert 2025-05-19 16:21:31 -04:00
2b604a4f89 Add to corpus 2025-05-19 16:19:21 -04:00
be8187b2fd Fix issue with fuzz test
Previously an implementation could never call on_begin_number or
on_end_number and still pass
2025-05-19 15:58:15 -04:00
2cb9bc8ad2 Add to corpus 2025-05-19 15:13:55 -04:00
bf30eabdfc Match simdjson behavior for surrogate pairs
As far as I can tell
2025-05-19 15:11:30 -04:00
292154100f Implement utf16 surrogate pairs 2025-05-19 14:53:16 -04:00
34ad19c22f Unescape basic multi-lingual plane utf8 2025-05-19 14:26:12 -04:00
19bc216458 Add utf-8 unescaping test 2025-05-19 13:14:24 -04:00
d9bb22e6b1 Fix several unescaping issues 2025-05-19 13:10:24 -04:00
553a273a1b Basic unescaping 2025-05-19 12:47:14 -04:00
d5bd9fc018 Call on_string_data with all available data 2025-05-19 12:41:12 -04:00
b7cacf13f4 Call on_number_data with all available bytes 2025-05-19 12:37:06 -04:00
5ae8d4343c Add simple unescaping test 2025-05-19 12:25:59 -04:00
fc747f96df invalidUtf8 -> invalidStringByte 2025-05-19 12:25:13 -04:00
a271d698d0 Include "callbacks.h" 2025-05-19 11:36:02 -04:00
d279173482 Validate utf8 2025-05-18 17:23:22 -04:00
452bbd3d9c More corpus 2025-05-18 17:21:13 -04:00
0a81c27155 Add corpus 2025-05-18 14:40:50 -04:00
32b43e71da Simplify fuzz test 2025-05-18 14:14:45 -04:00
b7f6ed1c9c Wee fuzz test and associated bug fixes 2025-05-18 13:46:00 -04:00