andrew
|
9e4f90f218
|
Add WeaselJsonRaw flag
|
2025-06-25 18:44:37 -04:00 |
|
andrew
|
3e72181bee
|
Add flags argument to WeaselJsonParser_create
|
2025-06-25 16:44:31 -04:00 |
|
andrew
|
01d81981f7
|
Fix arm build
|
2025-06-25 11:55:19 -04:00 |
|
andrew
|
89211753e2
|
Add to corpus
|
2025-06-24 15:58:58 -04:00 |
|
andrew
|
2e803b5a76
|
Fix bogus assert. 0x10ffff is a valid code point
|
2025-06-24 15:48:16 -04:00 |
|
andrew
|
a8aab0187e
|
Add some comments
|
2025-06-24 15:10:01 -04:00 |
|
andrew
|
63a1be497b
|
Remove unused table
It was making it into the shared object somehow
|
2025-06-24 15:09:21 -04:00 |
|
andrew
|
7470c69845
|
Ignore error in some places where push can't fail
|
2025-06-24 14:57:27 -04:00 |
|
andrew
|
c2f5d6983a
|
Store stackEnd instead of stackSize
|
2025-06-24 14:57:11 -04:00 |
|
andrew
|
575b6e5c62
|
Direct call to next continuation in some cases
|
2025-06-24 14:46:20 -04:00 |
|
andrew
|
67e63dc611
|
Multiply stackSize by sizeof stack element
|
2025-06-24 13:33:39 -04:00 |
|
andrew
|
9319076b44
|
Remove Parser3::complete
|
2025-06-24 13:15:39 -04:00 |
|
andrew
|
d1de15a0ca
|
Don't flush strings from keepGoing
|
2025-06-24 13:02:54 -04:00 |
|
andrew
|
dfce1ae412
|
Buf fix: Check for empty before resuming n_string2
|
2025-06-24 12:43:01 -04:00 |
|
andrew
|
5e3fa62a06
|
Remove acceptsEmptyString table
|
2025-06-24 12:19:31 -04:00 |
|
andrew
|
330101a937
|
Handle unescaping directly in n_string2 if space permits
|
2025-06-24 10:43:40 -04:00 |
|
andrew
|
9803364adb
|
Use table for hex values
|
2025-06-23 21:52:17 -04:00 |
|
andrew
|
2299904557
|
Compare dfa and simdjson::validate_utf8
|
2025-06-23 14:29:49 -04:00 |
|
andrew
|
578e507b96
|
Remove .clang-format
|
2025-06-23 14:29:40 -04:00 |
|
andrew
|
d536f7ba69
|
Add debugging printf commented out
|
2025-06-23 14:18:15 -04:00 |
|
andrew
|
851d07bc43
|
Use != instead of > 0
|
2025-06-23 14:15:25 -04:00 |
|
andrew
|
451c07747e
|
Move dfa's to tables.h
|
2025-06-23 14:15:05 -04:00 |
|
andrew
|
5df9d958ab
|
Unroll whitespace-skipping loop
|
2025-06-23 14:00:29 -04:00 |
|
andrew
|
47a418b689
|
Separate "normal" and "unicode" escapes
|
2025-06-23 13:18:05 -04:00 |
|
andrew
|
fe60881476
|
Add literals bench
|
2025-06-23 13:10:41 -04:00 |
|
andrew
|
4a9dfe0b45
|
Nest escape handling under N_STRING2
|
2025-06-23 13:06:12 -04:00 |
|
andrew
|
7ae2ef5443
|
Stop inlining strings and numbers into n_value
Too complex
|
2025-06-23 13:00:10 -04:00 |
|
andrew
|
2cd2975ad4
|
Remove dead code
|
2025-06-23 12:36:49 -04:00 |
|
andrew
|
f4c4ed4c36
|
Compare specific inputs with simdjson dom
|
2025-06-23 12:24:28 -04:00 |
|
andrew
|
03156d2036
|
Benchmarks that push the implementation in a specific way
|
2025-06-23 12:19:28 -04:00 |
|
andrew
|
56fc45ab52
|
Remove dead code
|
2025-06-23 11:53:39 -04:00 |
|
andrew
|
e477ff095a
|
clangd and clang-format pre commit agree now
Sheesh
|
2025-06-23 10:53:11 -04:00 |
|
andrew
|
fc1b3ac147
|
Fix string scan bug
|
2025-06-22 23:02:38 -04:00 |
|
andrew
|
95250d1668
|
Improve fuzz testing to find string scan bug
|
2025-06-22 23:00:34 -04:00 |
|
andrew
|
5a74124cae
|
Fix bug
|
2025-06-22 19:47:59 -04:00 |
|
andrew
|
337d93bcea
|
simd scan with dfa as fallback
|
2025-06-21 21:59:21 -04:00 |
|
andrew
|
fa0cc1a970
|
Scan string directly in n_value
|
2025-06-21 21:17:12 -04:00 |
|
andrew
|
229a68bfdd
|
Switch to dfa for strings
|
2025-06-21 17:12:48 -04:00 |
|
andrew
|
6c48c40d67
|
Rename tables
|
2025-06-21 16:05:02 -04:00 |
|
andrew
|
1df18b3c57
|
Add comments to dfa's
|
2025-06-21 16:01:35 -04:00 |
|
andrew
|
7806f6420f
|
Add to corpus
|
2025-06-21 15:56:42 -04:00 |
|
andrew
|
5613303d52
|
Add automata to recognize utf8 in strings
|
2025-06-21 15:56:15 -04:00 |
|
andrew
|
d1523acf94
|
Improve scan codegen
|
2025-06-20 15:11:29 -04:00 |
|
andrew
|
2be21c5453
|
Avoid pushing N_NUMBER on the stack if possible
|
2025-06-20 14:33:37 -04:00 |
|
andrew
|
4f24a44cb2
|
Improve scan
|
2025-06-20 10:02:37 -04:00 |
|
andrew
|
976f64b7d3
|
Try out dfa for numbers
|
2025-06-19 16:13:46 -04:00 |
|
andrew
|
e1ba8e9fa8
|
Fix non-x86 build
|
2025-06-05 17:42:34 -04:00 |
|
andrew
|
0c2af46a79
|
Start bench at a stride of 128
|
2025-06-05 15:45:44 -04:00 |
|
andrew
|
35c3e14586
|
Remove -mavx
|
2025-06-05 15:38:24 -04:00 |
|
andrew
|
d60777002f
|
Function multiversioning for n_string2
|
2025-06-05 15:36:12 -04:00 |
|
andrew
|
f7871915e9
|
Update simd.h
|
2025-06-05 15:34:10 -04:00 |
|
andrew
|
b050361823
|
Sort Parser3 members by size and add consts
|
2025-06-05 10:48:34 -04:00 |
|
andrew
|
2017784c97
|
Try to keep buf and bufEnd in registers
|
2025-06-05 10:43:38 -04:00 |
|
andrew
|
57bdc79ee7
|
Run tests from source dir to find test.json
|
2025-06-05 10:37:03 -04:00 |
|
andrew
|
d6d5e210e4
|
Update simd.h
|
2025-06-04 16:49:26 -04:00 |
|
andrew
|
b28251c8b1
|
Add to corpus
|
2025-06-04 14:19:53 -04:00 |
|
andrew
|
3e2f830d0b
|
Use new simd library for scanning string literals
|
2025-06-04 13:49:19 -04:00 |
|
andrew
|
b5f41768a7
|
Scan for non-decimal in n_digits2
|
2025-06-02 12:47:34 -04:00 |
|
andrew
|
67634bb977
|
Remove unused constant
|
2025-05-30 17:10:42 -04:00 |
|
andrew
|
b0dd034be8
|
Try loading dylib's too
|
2025-05-27 11:51:55 -04:00 |
|
andrew
|
7a3eb61868
|
Annotate all useTmp paths as unlikely
|
2025-05-27 10:37:09 -04:00 |
|
andrew
|
0027c9ff79
|
data -> userdata
|
2025-05-27 10:33:46 -04:00 |
|
andrew
|
f6cd807da3
|
Remove on_{begin,end}_{string,number}
And add `done` arg to data callback
|
2025-05-25 21:01:37 -04:00 |
|
andrew
|
f92b33eec3
|
Fix gcc, add -fno-jump-tables back
It's even faster for some reason
|
2025-05-25 16:59:43 -04:00 |
|
andrew
|
30129277e7
|
Fix some warnings
|
2025-05-25 16:29:22 -04:00 |
|
andrew
|
5971ad2ef0
|
Fix segfault issue
I think we need to keep a reference to the ctypes voidp object that we
pass as userdata alive
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
f2fdcfdf24
|
Add linker.map
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
d687a2671a
|
Add valgrind headers
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
aa2494c478
|
Add seemingly working python bindings
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
4240894318
|
Bring in a bunch of cmake settings from conflict-set
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
1217ded8a7
|
Convert everything to c api
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
f7ad84a79a
|
Start building library
|
2025-05-24 18:20:36 -04:00 |
|
andrew
|
f519d3ce29
|
Add to corpus
|
2025-05-24 18:20:35 -04:00 |
|
andrew
|
b2735330f9
|
Add PRESERVE_NONE to continuations
|
2025-05-24 18:20:35 -04:00 |
|
andrew
|
ab23eda489
|
Fix gcc arm build
|
2025-05-24 16:04:22 -04:00 |
|
andrew
|
bf3fbd638c
|
arm64 implementation for scanning for non-normal chars in strings
|
2025-05-24 13:34:59 -04:00 |
|
andrew
|
493e6aec31
|
Benchmark different strides
|
2025-05-22 19:24:14 -04:00 |
|
andrew
|
41c8fcc30c
|
Fix gcc build
|
2025-05-22 16:32:45 -04:00 |
|
andrew
|
18748483b2
|
Add to corpus
|
2025-05-22 15:51:51 -04:00 |
|
andrew
|
ef19dae3f6
|
Simd string2
|
2025-05-22 15:36:46 -04:00 |
|
andrew
|
ad17336997
|
Remove alignas(16) from tables
I don't think it makes a difference
|
2025-05-22 14:54:32 -04:00 |
|
andrew
|
23929289cb
|
Annotate all reject code paths as unlikely
|
2025-05-22 14:51:55 -04:00 |
|
andrew
|
3682bea38a
|
Add to corpus
|
2025-05-22 13:17:38 -04:00 |
|
andrew
|
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 |
|
andrew
|
c939bc3baa
|
Remove most usages of T_END_NUMBER
|
2025-05-22 12:37:08 -04:00 |
|
andrew
|
76e03e635b
|
Skip past false,true,null directly if buffered
|
2025-05-22 12:23:09 -04:00 |
|
andrew
|
af07cdc8be
|
Skip past N_INTEGER
|
2025-05-22 12:15:50 -04:00 |
|
andrew
|
3afa3b6e9a
|
Skip N_OBJECT and N_ARRAY
|
2025-05-22 11:55:27 -04:00 |
|
andrew
|
3635f5cf18
|
Skip over n_string when you know it matches
|
2025-05-22 11:45:57 -04:00 |
|
andrew
|
56f6ab6566
|
Fuse whitespace into string
|
2025-05-22 11:42:05 -04:00 |
|
andrew
|
297d6b48f7
|
Fuse whitespace into object2, object3, array2, array3, colon
|
2025-05-22 11:38:42 -04:00 |
|
andrew
|
dff2120867
|
Remove redundant len check
|
2025-05-22 11:31:07 -04:00 |
|
andrew
|
048caa830a
|
Fuse N_WHITESPACE into N_VALUE
|
2025-05-22 11:21:58 -04:00 |
|
andrew
|
0786d8db4c
|
More work on c api
|
2025-05-22 11:00:59 -04:00 |
|
andrew
|
6e602d8fd5
|
Start working on c api
|
2025-05-22 10:55:15 -04:00 |
|
andrew
|
96ef50d52f
|
Add to corpus
|
2025-05-21 17:00:05 -04:00 |
|
andrew
|
45029e7dfa
|
Add to corpus
|
2025-05-21 16:48:01 -04:00 |
|
andrew
|
0b68fd1d41
|
Test more strides
|
2025-05-21 16:19:58 -04:00 |
|
andrew
|
611d1a07de
|
Validate correct string data in fuzz test
|
2025-05-21 15:45:24 -04:00 |
|
andrew
|
c261b64620
|
Fix unintentionally disabled test
|
2025-05-21 14:06:43 -04:00 |
|