Commit Graph

59 Commits

Author SHA1 Message Date
dd8b316e29 Remove parser2 2025-05-18 11:42:48 -04:00
19208c0e0a Pivot to simpler approach. Passes JSONTestSuite 2025-05-18 11:34:12 -04:00
6cb7645675 Fix bogus assert 2025-05-17 17:54:37 -04:00
01ffe4e15d Organize members, tweak eof 2025-05-17 17:52:19 -04:00
99e9688efe Don't pass null to memchr 2025-05-17 17:50:37 -04:00
925429f8e4 Add T_EOF 2025-05-17 17:15:01 -04:00
37c860ce62 Combine prime and parse 2025-05-17 13:41:28 -04:00
e10fb92801 Fix includes 2025-05-17 13:34:30 -04:00
733dc576b7 Start organizing code 2025-05-17 12:24:07 -04:00
6f0315e00c Don't check for empty stack as often 2025-05-16 17:00:18 -04:00
adedfc6435 Mention we don't validate utf-8 2025-05-16 16:59:45 -04:00
2b640832f6 Use 64 bit index 2025-05-16 16:52:18 -04:00
01e04ca166 Output delimiters for minifyCallbacks 2025-05-16 16:11:28 -04:00
3c646732ac Add .clangd 2025-05-16 12:55:45 -04:00
dbf20328d1 Handle more "number" digits 2025-05-16 12:54:13 -04:00
545836f6d2 Handle string framing (i.e. \") 2025-05-16 12:38:38 -04:00
aa25751c17 static assert symbolNames is the right size 2025-05-15 20:38:27 -04:00
3cedd66d74 Add whitespace nonterminal 2025-05-15 20:33:56 -04:00
d8a8bcbd19 Fix some callback calls 2025-05-15 19:53:22 -04:00
a7b8cc91ea Remove Parser2::parseLiteral 2025-05-15 17:39:07 -04:00
6fc0a7013e Fix missing calls to on begin object/array 2025-05-15 17:30:37 -04:00
a9ebff72b0 Close to streaming parser 2025-05-15 17:24:37 -04:00
2507e34883 Prepare for streaming interface 2025-05-15 16:36:01 -04:00
8720220303 Return Status instead of bool 2025-05-14 20:38:01 -04:00
adbdae5730 Simplifications 2025-05-14 20:04:03 -04:00
318fe49c31 gc sections on linux 2025-05-14 19:55:29 -04:00
b15a598f2d Simplify maybeSkipWs 2025-05-14 19:52:11 -04:00
c30e3e6713 Fix parsing empty arrays/objects 2025-05-14 19:41:57 -04:00
555b388509 Test empty list, object 2025-05-14 19:31:22 -04:00
59932d5bbe Just do a simple lookup table 2025-05-14 15:47:32 -04:00
35ca9e4562 Don't track len separately 2025-05-14 14:12:44 -04:00
9876afafb2 Add -mavx 2025-05-14 09:28:06 -04:00
280962cdd0 simd maybeSkipWs. Not sure if faster 2025-05-13 21:17:37 -04:00
36f8df4201 Mark Parser2::empty as const 2025-05-13 17:55:44 -04:00
c822d0ffaa Simplify table
Now we only have symbols that actually go on the stack
2025-05-13 17:52:56 -04:00
cf08854664 Copy strings in benchmarks 2025-05-13 15:29:45 -04:00
73762b53db Compare to simdjson 2025-05-13 15:01:27 -04:00
a04a558276 Update parser descriptions 2025-05-13 14:00:20 -04:00
d0447e64b2 Accept . in numbers 2025-05-13 13:55:26 -04:00
4e4f69cb88 Add true, false, and null to sample json 2025-05-13 13:48:35 -04:00
58a8380005 Remove some dead code 2025-05-13 13:31:15 -04:00
b5f976208d Save one iteration in parse_number 2025-05-13 13:29:17 -04:00
1fab01516e Make use of "expected symbol" info 2025-05-13 13:24:45 -04:00
052e452669 Don't need to pop in reject 2025-05-13 12:30:43 -04:00
496fb229ec Pass symbol on top of stack to nextToken 2025-05-13 12:29:48 -04:00
557e89f1a2 Remove PRESERVE_NONE 2025-05-13 11:58:31 -04:00
47d6705aaf Remove currentToken asserts 2025-05-13 11:52:12 -04:00
64a3b8ac8c Return token from nextToken again 2025-05-13 11:29:28 -04:00
30c9ad8690 Call nextToken from keepGoing 2025-05-13 11:23:24 -04:00
b6adb2885f Minor tinkers 2025-05-13 11:21:51 -04:00