John Keiser
fd418f568c
Fix c++11 warnings on clang
...
- namespace x::y is C++17
- static_assert requires message in C++11
2020-04-15 17:27:48 -07:00
John Keiser
09cf18a646
Add C++11 tests to cmake
...
- Add simdjson-flags target so callers don't have flags forced on them
2020-04-15 17:26:25 -07:00
Daniel Lemire
326c175dcb
Massive performance boost for get<double>. ( #719 )
...
* Massive performance boost for get<double>.
2020-04-15 20:09:45 -04:00
Daniel Lemire
6d7c77ddc1
Let us try to check with the exceptions disabled. ( #707 )
...
* Tweaking code so that we can run all tests with exceptions off.
* Removing SIMDJSON_DISABLE_EXCEPTIONS
2020-04-15 16:45:36 -04:00
Daniel Lemire
efd706528b
Minor tweaks to the CMake.
2020-04-15 10:19:05 -04:00
Daniel Lemire
b523c43927
Can we provide a size() function to arrays and objects? (eager approach) [TO BE MERGED] ( #690 )
...
* This is an implementation of "size()" for arrays and objects.
* Adding benchmark
* Adding a size() remark in the documentation.
* Extending size() to result types.
2020-04-15 10:15:48 -04:00
Paul Dreik
75545ff70d
ref qualify parser methods to avoid use of dangling objects ( #703 )
...
To avoid using data belonging to a temporary, the parse functions are ref qualified to get a compile error if used on an rvalue. See https://github.com/simdjson/simdjson/issues/696
Compilation tests are also added, to make sure bad usage fails to compile.
Reviewed by jkeiser.
2020-04-15 09:57:52 +02:00
Daniel Lemire
3c6ef83046
Trying to correct the documentation so that it actually describes how the code behaves. (Attempt two) ( #712 )
...
* Trying to correct the documentation so that it actually describes how the code behaves.
* tweaking the wording.
* Improving.
* Removing confusing sentence.
* Fixing formatting.
* Now with working example, tested.
* Added a smaller piece of code
2020-04-14 22:31:21 -04:00
John Keiser
b9ac0a79f1
Merge pull request #715 from simdjson/jkeiser/thorough-type-tests
...
Test more variants of cast, get, etc.
2020-04-14 16:08:36 -07:00
Daniel Lemire
8539896f3d
It is inconvenient to be unable to print a padded_string. ( #713 )
...
* It is inconvenient to be unable to print a padded_string.
* Allows us to print the padded_string even when it is embedded in result object when exceptions are enabled.
2020-04-14 19:07:32 -04:00
John Keiser
a3b508ceff
Test get<>(), exception vs. no exception, explicit vs. implicit cast
2020-04-14 13:18:42 -07:00
Daniel Lemire
334a486737
Tweaking the doxygen. ( #700 )
...
* Tweaking the doxygen.
* Fixing typo.
2020-04-14 11:31:46 -04:00
Daniel Lemire
d7370cc916
Let us document the relationship between a parser instance and the parsed document. ( #699 )
2020-04-14 08:30:06 -04:00
Paul Dreik
92c34f7f38
do not use deprecated apis in the fuzzers ( #705 )
...
* move from deprecated interface in fuzz dump raw tape
* update fuzz_dump to the non deprecated replacement
* replace use of deprecated api
* hopefully fix windows build
2020-04-14 07:45:30 +02:00
Paul Dreik
93328c8d6d
improve the fuzzer documentation, refresh links ( #697 )
2020-04-12 17:49:40 -04:00
Paul Dreik
5710ec13d4
switch to clang 9 in the github action ( #695 )
...
The upstream convenience script from llvm does not support installing clang 8 anymore.
2020-04-12 20:02:45 +02:00
Paul Dreik
fa637fcecb
Enable the minifier fuzzer ( fixes #530 ) ( #694 )
...
This enables the minify fuzzer, which has been disabled because it did not pass the oss-fuzz instrumentation test. Now it does, after changes in simdjson (https://github.com/lemire/simdjson/issues/186 ).
* get minify running (api change)
* disable benchmarks when compiling fuzzers
* catch exceptions from the minify fuzzer
* enable repeated corpus creation without recursive inclusion of zip
* remove leftover comment
2020-04-12 18:47:24 +02:00
Daniel Lemire
4af7d6f108
Disabling threads on apple's hardware when optimizer is turned off ( #692 )
...
* Disabling threads on apple's hardware.
* Turns out that you can have your bread, your butter and you cake too!
2020-04-10 18:41:05 -04:00
John Keiser
0fd159dadb
Merge pull request #689 from simdjson/jkeiser/cmake-test
...
Add most CI tests to cmake
2020-04-09 16:12:32 -07:00
John Keiser
1ff22c78b3
Add quickstart to cmake
2020-04-09 14:56:54 -07:00
John Keiser
ceb1def55c
Add quicktests, slowtests to cmake
...
- Also add testjson2json.sh
- Move test scripts to tests directory to consolidate concerns
2020-04-09 14:21:45 -07:00
John Keiser
893a1d8306
Merge pull request #685 from simdjson/jkeiser/cmake-competition
...
Add parsing competitions to cmake
2020-04-09 11:25:12 -07:00
John Keiser
3c91690e55
Don't run parsing competitions on Windows
...
(They currently use linux-specific stuff.)
2020-04-09 08:52:29 -07:00
John Keiser
6835dd73bc
Only apply compile flags to simdjson
2020-04-09 08:52:29 -07:00
John Keiser
7317fe1440
Don't reinitialize submodules
...
Add ability to turn competitive benchmarks off (no need for submodules)
2020-04-09 08:52:29 -07:00
John Keiser
7b58fea911
Add benchmark competitions to cmake
2020-04-09 08:52:29 -07:00
John Keiser
c1ff74c9a6
Add issue150 test
2020-04-09 08:52:29 -07:00
John Keiser
6dabfa176a
Add competition libraries
2020-04-09 08:52:29 -07:00
John Keiser
0714f5fc67
Create dependencies/CMakeLists.txt
2020-04-09 08:52:29 -07:00
John Keiser
3b1b1bfd48
Merge pull request #684 from simdjson/jkeiser/cmake
...
Simplify cmake, add more of our tests into it
2020-04-08 16:02:47 -07:00
John Keiser
218c867f46
Disable failing VS2017 tests in cmake
2020-04-08 14:58:28 -07:00
Daniel Lemire
2bc12f9730
Removing useless line.
2020-04-08 17:55:25 -04:00
Daniel Lemire
5e564a8e0c
Improving the doxygen. ( #687 )
2020-04-08 17:53:04 -04:00
John Keiser
beaa6a9a7a
Create simdjson-windows-headers interface library
2020-04-08 14:52:56 -07:00
John Keiser
a9c8224f40
Add numberparsingcheck and stringparsingcheck tests
2020-04-08 14:52:56 -07:00
John Keiser
3dcc188d93
Add more tests to cmake
2020-04-08 14:52:56 -07:00
John Keiser
10b7556a37
Specify cmake tests, benchmarks and tools idiomatically
2020-04-08 14:52:56 -07:00
John Keiser
54b7291c34
Reference simdjson by name, don't specify include files individually
2020-04-08 14:52:55 -07:00
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
Daniel Lemire
74d9b41b7d
Minor fixes to our documentation regarding thread safety. ( #683 )
...
* Minor fixes to our documentation regarding thread safety.
* A bit more pessimistic.
2020-04-08 16:41:08 -04:00
John Keiser
ff0b0c54b7
Merge pull request #682 from simdjson/jkeiser/simplify-cars
...
Simplify cars example
2020-04-08 10:24:01 -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
Dirk Eddelbuettel
12ed6336b1
remove three trailing semicolons that -pedantic dislikes ( #673 )
2020-04-02 21:06:25 -04:00
Daniel Lemire
3cb79e6977
Trying again. ( #671 )
2020-04-02 19:24:43 -04:00
John Keiser
c5e21a2469
Merge pull request #669 from simdjson/jkeiser/type-switch
...
Add element.type() for type switching
2020-04-02 15:01:51 -07:00
John Keiser
13aee51011
Add element.type() for type switching
2020-04-02 14:07:19 -07:00
Daniel Lemire
53fca1b5e6
This is a first attempt at fixing issue 660. ( #668 )
...
* This is a first attempt at fixing issue 660. The hard part is not the fix by itself, the hard part is to make sure we never get caught with our pants down like that again.
I expect the CI tests will fail. Further commits will solve the issues.
* Setting the rpath properly.
* For the sanitize tests, we want verify the installation.
2020-04-02 15:18:58 -04:00