Daniel Lemire
4d4ed92055
Removes 5 KB of tables in the number parsing routine ( #1139 )
...
* Removes 5 KB of tables at the expense, and a load, at the expense
of a multiplication and a shift. I have not benchmarked this new
code, but my expectation is that it should be largely performance
neutral. The motivation is to reduce the size of the library slightly.
There is also a matter of elegance.
2020-09-02 15:47:11 -04:00
John Keiser
f0ec26992a
Remove bit_or (bad perf on Windows)
2020-09-01 08:43:09 -07:00
John Keiser
62e8332b34
Use simd8x64 abstractions in classification
2020-09-01 08:43:09 -07:00
John Keiser
0925f71987
Simplify operator classification lookup on Intel
2020-09-01 08:43:07 -07:00
Daniel Lemire
4c11652808
This must be a typo ( #1140 )
2020-08-28 20:35:13 -04:00
Daniel Lemire
5b10c38e43
Make parse_many safer. ( #1137 )
2020-08-20 22:22:46 -04:00
Daniel Lemire
3316df9195
Adding test for issue 1133 and improving documentation ( #1134 )
...
* Adding test.
* Saving.
* With exceptions.
* Added extensive tests.
* Better documentation.
* Tweaking CI
* Cleaning.
* Do not assume make.
* Let us make the build verbose
* Reorg
* I do not understand how circle ci works.
* Breaking it up.
* Better syntax.
2020-08-20 14:03:14 -04:00
Daniel Lemire
5d355f1a8b
release candidate ( #1132 )
2020-08-19 18:12:23 -04:00
John Keiser
2ff91103ca
Remove SIMDJSON_DO_NOT_USE_THREADS_NO_MATTER_WHAT ( #1131 )
2020-08-19 17:11:13 -04:00
Daniel Lemire
a954d50ad4
This improves our documentation. ( #1128 )
...
* This improves our documentation.
* Removing tags for doxygen.
* You need a recent cmake remark.
2020-08-19 14:02:08 -04:00
John Keiser
5be4d37aff
Merge pull request #1129 from simdjson/jkeiser/inl
...
Move inline/* to *-inl.h
2020-08-19 09:52:34 -07:00
John Keiser
1e6c9dbcfa
Reamalgamate
2020-08-19 09:16:25 -07:00
John Keiser
708a56872d
Move inline/* to *-inl.h
2020-08-19 09:09:31 -07:00
John Keiser
0a2bca3f73
Merge pull request #1101 from simdjson/jkeiser/yakety-sax
...
Basic SAX interface with benchmarks
2020-08-19 09:05:44 -07:00
Daniel Lemire
1ec710c985
Updating the documentation for hackers.
2020-08-19 10:59:24 -04:00
Daniel Lemire
d5a44f9ad4
Merge branch 'master' of github.com:simdjson/simdjson
2020-08-19 10:36:01 -04:00
Daniel Lemire
e64dca7144
Tweaking.
2020-08-19 10:35:49 -04:00
John Keiser
b2779c35df
Fix issue with unsupported unreachable on Windows
2020-08-18 21:35:12 -07:00
John Keiser
9b11e119d4
Make skip_double() comment more explicit
2020-08-18 21:25:03 -07:00
John Keiser
988c62baed
Encapsulate significant_digits()
2020-08-18 21:25:03 -07:00
John Keiser
eb3e640003
Return bool from compute_float_64
2020-08-18 21:25:03 -07:00
John Keiser
9475b947f5
Return error codes from parse_number
2020-08-18 21:25:03 -07:00
John Keiser
18564f1ae2
Don't benchmark unless haswell is available
2020-08-18 21:25:03 -07:00
John Keiser
638f1deb62
Add DOM tweet reader for comparison
2020-08-18 21:25:03 -07:00
John Keiser
7e74d30f45
[WIP] tweet reader SAX benchmark
2020-08-18 21:25:03 -07:00
John Keiser
ce8d0f8135
Add visit_primitive() helper in iterator
2020-08-18 21:25:03 -07:00
John Keiser
872127b722
Move is_array management together with depth
2020-08-18 21:25:03 -07:00
John Keiser
e180dc44bc
Move container logging into json_iterator
2020-08-18 21:25:03 -07:00
John Keiser
268b8845a9
Document tape_builder
2020-08-18 21:25:03 -07:00
John Keiser
74c47995a3
Document json_iterator
2020-08-18 21:25:03 -07:00
John Keiser
24f5936cbf
Give is_array responsibility to json_iterator
2020-08-18 21:25:03 -07:00
John Keiser
bdfa8aca28
Separate interface from implementation to make interface clearer
2020-08-18 21:25:03 -07:00
John Keiser
15eb1ad922
Preface visitor methods with visit()
2020-08-18 21:25:03 -07:00
John Keiser
6ec98ee8b1
Add error codes to all things
2020-08-18 21:25:03 -07:00
John Keiser
c5862d6de9
Remove empty_object/empty_array
2020-08-18 21:25:03 -07:00
John Keiser
57eb55446f
Cache string value locally
2020-08-18 21:25:03 -07:00
John Keiser
abd1399a7f
Don't check depth at the end (unnecessary check)
2020-08-18 21:25:03 -07:00
John Keiser
57eba21ee5
Fall through goto labels where possible
2020-08-18 21:25:03 -07:00
John Keiser
1b56211a70
Give start_*/end_* error codes
2020-08-18 21:25:03 -07:00
John Keiser
d8974d53b2
Keep value around between states
2020-08-18 21:25:03 -07:00
John Keiser
5ecd17f49e
Log unconsumed input as an error
2020-08-18 21:25:03 -07:00
John Keiser
6bb99aec3c
Merge structural_parser+iterator into json_iterator
2020-08-18 21:25:03 -07:00
John Keiser
a67e83e24e
Remove parse_* from visitor method names
2020-08-18 21:25:03 -07:00
John Keiser
5a3c3134ec
Move value into common place to be shared across states
2020-08-18 21:25:03 -07:00
John Keiser
ce8b9ee8c4
Move finish() out to walk_document
2020-08-18 21:25:03 -07:00
John Keiser
970dfc9f67
builder -> visitor, parser -> iter
2020-08-18 21:25:03 -07:00
John Keiser
04d39c0961
Make tape_builder primary entry point to stage 2
2020-08-18 21:25:01 -07:00
John Keiser
d6339aa015
Set is_array in builder
2020-08-18 17:41:48 -07:00
John Keiser
11076bf337
containing_scope -> open_container
2020-08-18 17:41:16 -07:00
Daniel Lemire
8a8eea53a2
Prefixing macros (issue 1035) ( #1124 )
...
* Renaming partially done.
* More prefixing.
* I thought that this was fixed.
* Missed one.
* Missed a few.
* Missed another one.
* Minor fixes.
2020-08-18 18:25:36 -04:00