John Keiser
1e30b6e334
Compile under C++ 11
2020-04-08 14:00:13 -07:00
John Keiser
406240bae3
Support C++ 14
2020-04-08 14:00:13 -07:00
John Keiser
6eec2d6b4f
Simplify cars example
2020-04-05 09:15:20 -07:00
Daniel Lemire
5731c5437a
Sanity test. ( #675 )
2020-04-04 16:39:37 -04:00
Daniel Lemire
04f14ec026
This adds a test for std::ignore ( #674 )
2020-04-04 11:53:03 -04:00
John Keiser
13aee51011
Add element.type() for type switching
2020-04-02 14:07:19 -07:00
John Keiser
d93af1161d
Remove set_capacity, replace with allocate
...
Makes allocation point more predictable
2020-03-30 13:49:54 -07:00
John Keiser
434776db1a
Deprecate more things
2020-03-30 13:48:43 -07:00
John Keiser
2115596ed3
Compile performance.md examples in tests
2020-03-29 16:28:34 -07:00
John Keiser
0e3453f7c2
Compile examples from implementation-selection.md
2020-03-29 16:28:34 -07:00
John Keiser
7ed65e42d7
Add actual examples from basics.md to readme_examples
2020-03-29 16:28:29 -07:00
John Keiser
ea8a5020e2
Remove array indexer, make object indexer key lookup
2020-03-28 15:56:43 -07:00
John Keiser
622d9c9480
Replace as_X and is_X with get<T> and is<T>
2020-03-28 15:29:53 -07:00
John Keiser
62da98aef6
Rename dom::stream to dom::document_stream
2020-03-28 13:42:24 -07:00
John Keiser
03746b966b
Move document/element/etc. under dom
2020-03-28 13:42:21 -07:00
John Keiser
e836c28008
Deprecate parser error code methods
...
- Also make competitions compile without warnings
2020-03-28 10:13:20 -07:00
John Keiser
5ad405006c
Return document::element from parse, load, parse_many, load_many
2020-03-27 12:24:41 -07:00
John Keiser
90a7503181
Rename pj -> doc, fix a few other idioms
2020-03-27 09:22:46 -07:00
John Keiser
c14b2fb36c
Remove const char* variants for at_key()
...
- Remove const char * variants for at_key(), string_view covers them
- Add at_key_case_insensitive variants on *_result
- Add at(), at_key(), at_key_case_insensitive() tests
2020-03-27 09:09:08 -07:00
John Keiser
f0f111b387
Make ParsedJson::Iterator backcompat test
2020-03-27 09:07:39 -07:00
Daniel Lemire
6a8ec95a46
Various fixes.
2020-03-26 20:08:54 -04:00
Daniel Lemire
b6c6680add
Ported jsoncheck.
2020-03-26 19:56:04 -04:00
Daniel Lemire
5fb149f833
Converted inter_tests...
2020-03-26 19:52:17 -04:00
Daniel Lemire
abb0bf9247
Fixed basictests
2020-03-26 19:40:29 -04:00
Daniel Lemire
8f3ddd3a73
Updating allparserscheckfile
2020-03-26 17:15:33 -04:00
John Keiser
2e420169c3
Remove document::parse and document::load
2020-03-26 10:13:09 -07:00
John Keiser
5aec2671ea
Remove JsonStream. Use parse_many() instead.
2020-03-26 09:25:07 -07:00
John Keiser
a0bce440a6
Remove document_iterator, document::iterator, ParsedJsonIterator
...
Keep ParsedJson::Iterator only, without template, in same form as
it was in 0.2
2020-03-25 18:26:51 -07:00
John Keiser
e1b1500e3b
Make _padded available without using namespace simdjson
2020-03-25 09:37:18 -07:00
John Keiser
b28cafc1d1
Remove backslash unescaping from JSON pointer impl
...
Also speed up non-escaped key lookup
2020-03-25 08:56:40 -07:00
John Keiser
0bcda5e384
Support JSON pointer in DOM navigation model
2020-03-23 15:05:20 -07:00
John Keiser
c34b1a1b2a
Organize basic tests to make easier to turn on/off
2020-03-21 18:12:16 -07:00
John Keiser
e4df0ca368
Add parse, parse_many, load, load_many tests
2020-03-21 18:12:16 -07:00
Daniel Lemire
8a91cecf41
testing only with ok documents.
2020-03-21 18:12:16 -07:00
Daniel Lemire
04e8710cf5
Testing issue 570
2020-03-21 18:12:16 -07:00
John Keiser
e8b3f9eaad
Support document::parse("[1,2,3]"_padded)
2020-03-21 11:15:20 -07:00
Daniel Lemire
5d1e3efce8
faster minifier ( #568 )
...
* Fallback should use our scalar code.
* parse should have a nicer error message.
* Making it so that "minify" can use different architectures.
* Let us change the minifier competition so that it tests all implementations.
* Documenting the untaken optimization opportunity.
Co-authored-by: John Keiser <john@johnkeiser.com>
2020-03-20 16:14:47 -04:00
John Keiser
7cf3a7511b
Add fallback implementation to CI
...
- Also add SIMDJSON_IMPLEMENTATION_HASWELL/WESTMERE/ARM64/FALLBACK=1/0 to
enable/disable various implemnentations
2020-03-17 14:59:47 -07:00
John Keiser
af203aaf86
Add fallback parser for pre-SSE4.2 machines
2020-03-17 14:59:47 -07:00
John Keiser
8e2c06cb0e
Compile with -fno-exceptions
2020-03-17 13:54:37 -07:00
John Keiser
1a5d8f1957
Add tests for SIMDJSON_EXCEPTIONS=0, add `tie()` support
2020-03-17 13:54:37 -07:00
Daniel Lemire
317fc6ba0e
accurate number parsing ( #558 )
2020-03-15 22:30:21 -04:00
Daniel Lemire
d9a9fd387d
Adding a stress test.
2020-03-13 18:59:15 -07:00
John Keiser
acc7bd79b0
Support cout << json, cout << minify(json)
2020-03-13 18:59:15 -07:00
Daniel Lemire
12e6611ba4
Fix for printf.
2020-03-13 14:44:21 -04:00
Daniel Lemire
06c1dc3a29
Adding NDEBUG to release ( #557 )
...
* Adding NDEBUG to release
* Asserts are deleted with NDEBUG. We want hard asserts.
2020-03-13 14:37:02 -04:00
Daniel Lemire
89d9de2353
Adding a check to see whether document::stream copy constructor and assignment actually compile ( #556 )
...
* Currently, document::stream contains an attribute that is a reference:
```
document::parser &parser;
```
Yet we try to have it default on the move operator:
```
stream &operator=(document::stream &&other) = default;
stream &operator=(const document::stream &) = delete; // Disallow copying
```
```
stream(document::stream &&other) = default;
stream(const document::stream &) = delete; // Disallow copying
```
I am not sure what the move is supposed to do with the reference.
I cannot find where we test the copy constructor and assignment. This has been concerned that it is either dead code or buggy code.
* Remove non-working, unnecessary move constructors
* We still want to disallow copies.
Co-authored-by: John Keiser <john@johnkeiser.com>
2020-03-13 12:53:42 -04:00
John Keiser
ac0899c043
Add error tests, doc_ref_result[] chaining
2020-03-11 17:19:41 -07:00
John Keiser
40c6213d7e
Add parser.load() and load_many() to load files
2020-03-11 17:19:41 -07:00
John Keiser
d140bc23f5
Automatically allocate memory as needed in parse
2020-03-11 16:14:54 -07:00