John Keiser
6455ec36ec
Reamalgamate
2020-10-06 11:29:46 -07:00
John Keiser
6d978c383a
Kinder, gentler implementation selection
...
- Allow user to specify SIMDJSON_BUILTIN_IMPLEMENTATION
- Make cmake -DSIMDJSON_IMPLEMENTATION=haswell *only* specify haswell
- Move negative implementation selection to
-DSIMDJSON_EXCLUDE_IMPLEMENTATION
- Automatically select SIMDJSON_BUILTIN_IMPLEMENTATION if
SIMDJSON_IMPLEMENTATION is set
- Move implementation enablement mostly to implementation files
- Make implementation enablement and selection simpler and more robust
- Fix bug where programs linked against simdjson were not passed
SIMDJSON_XXX_IMPLEMENTATION or SIMDJSON_EXCEPTIONS
2020-10-06 11:29:45 -07:00
John Keiser
3577c87c88
Fix amalgamation with generic/ files in include/
2020-10-04 12:47:30 -07:00
Daniel Lemire
0552335ec1
Fixing the issue. ( #1151 )
2020-09-02 18:41:59 -04:00
Daniel Lemire
5d355f1a8b
release candidate ( #1132 )
2020-08-19 18:12:23 -04:00
John Keiser
1e6c9dbcfa
Reamalgamate
2020-08-19 09:16:25 -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
PavelP
78ce2b473e
Copy README.md/amalgamate_demo.cpp only if output dir isn't the same as ${SCRIPTPATH} ( #1113 )
...
+ use test's `-ef` file operator to check if ${SCRIPTPATH} and ${AMALGAMATE_OUTPUT_PATH} are not the same
2020-08-18 08:35:21 -04:00
Daniel Lemire
501fed6c4f
This would disable bash scripts under FreeBSD. ( #1118 )
...
* This would disable bash scripts under FreeBSD.
* Let us also disable GIT.
* Let us try to just disable GIT
* Nope. We must have both bash and git disabled.
2020-08-17 11:50:57 -04:00
Daniel Lemire
f32e3e0c7c
Please don't use GNU-specific flags. ( #1109 )
2020-08-11 09:12:39 -04:00
Pavel P
352eb4cb6d
Do not update README.md and amalgamate_demo.cpp from amalgamate.sh
...
README.md and amalgamate_demo.cpp are always the same, there is no point to keep a copy and recreate them from amalgamate.sh
2020-08-06 09:11:20 +06:00
John Keiser
ed5e313c73
Reamalgamate
2020-08-04 13:17:23 -07:00
John Keiser
7d347be902
Untangle amalgamated headers
2020-07-24 02:56:41 -07:00
Daniel Lemire
4beb2ed507
Make simd8 64 uncopyable and other Visual Studio optimizations ( #1031 )
...
* Working on making simd8x64 immutable
* Even less invasive
2020-07-21 18:11:21 -04:00
Daniel Lemire
e2cfcc52b3
Disabling cxx20 ( #1058 )
...
* Disabling C++ 20 features.
* Updating single-header.
2020-07-21 17:15:31 -04:00
Joe Jevnik
d2bea0c228
Add support for C++ 20 ranges. ( #1050 )
...
C++ 20 adds a new feature called "ranges", which provides components for dealing
with sequences of values: https://en.cppreference.com/w/cpp/ranges .
A range is like a normal object containing `begin` and `end`, except there are
also composable operations like maps, filters, joins, etc.
The iterator objects returned by a range's `begin` and `end` require a more
strict set of operations than is needed for a range-for loop.
This PR adds the extra operations needed to support turning `dom::array` and
`dom::object` into a range.
This PR does not depend on any C++ 20 behavior, the added operators are all
valid C++ 11, and are already part of the LegacyIterator concepts.
This PR adds extra code behind: `#if defined(__cpp_lib_ranges)` guards, which is
the new C++ 20 specified feature test macro for ranges support. When ranges
support is detected, extra compile time checks are added to ensure that
`dom::array` and `dom::object` satisfy the range concept. No runtime tests have
been added yet because these compile time checks should be sufficient.
If desired, the `static_assert` code could be moved out of the actual code
headers and put into a test file.
2020-07-21 13:27:39 -04:00
Daniel Lemire
d0ce2f0b5a
Fixing clang under visual studio ( #1028 )
...
* Lots of fixes
* Removing some lambdas
* Removing some functional programming.
Co-authored-by: Daniel Lemire <lemire@gmai.com>
2020-07-06 18:58:19 -04:00
Daniel Lemire
74870a8189
Fixing issue 1013. ( #1016 )
...
* Fixing issue 1013.
* Bumping to 0.4.6
Co-authored-by: Daniel Lemire <lemire@gmai.com>
2020-07-01 14:14:51 -04:00
Daniel Lemire
0ef4d90ad0
Fix for issue 1014. ( #1015 )
...
* Fix for issue 1014.
* Explanation.
Co-authored-by: Daniel Lemire <lemire@gmai.com>
2020-06-30 19:36:26 -04:00
Daniel Lemire
e38fe3d361
Version update
2020-06-30 09:41:20 -04:00
Daniel Lemire
3faae67663
New release
2020-06-29 21:11:58 -04:00
Daniel Lemire
ccc94c9b05
Mingw tests (32-bit and 64-bit) ( #1004 )
2020-06-29 21:10:54 -04:00
Daniel Lemire
0ba76ac066
This enables building the library under Visual Studio 2015 ( #1002 )
...
Co-authored-by: Daniel Lemire <lemire@gmai.com>
2020-06-29 08:43:47 -04:00
Daniel Lemire
077907b7c3
Preparing a new patch release.
2020-06-28 12:40:13 -04:00
Daniel Lemire
4582a13360
Final steps.
2020-06-26 20:31:24 -04:00
Daniel Lemire
b6997a56df
Patching things up and adding tests.
2020-06-26 12:15:16 -04:00
Daniel Lemire
2956bce047
Minor fixes to avoid 32-bit warnings.
2020-06-25 21:12:26 -04:00
Brendan Knapp
41f33ecbb9
Permit 32-bit GCC compilation
2020-06-25 17:07:17 -07:00
Daniel Lemire
470cbbe9ff
Nitpicking.
2020-06-23 22:07:40 -04:00
Daniel Lemire
e01f1434fb
Bumping up the version number
2020-06-23 20:55:52 -04:00
John Keiser
843b73dedb
Make singleheader tests be test-only
2020-06-23 13:35:27 -07:00
John Keiser
42a8b40de0
Reamalgamate
2020-06-23 09:53:36 -07:00
John Keiser
52e3c063c5
Add repro for #953
...
Depend on singleheader-files via custom target to avoid races
2020-06-23 09:53:21 -07:00
John Keiser
1b1a122b1f
Fix copy constructor issue on older gcc
2020-06-21 12:06:14 -07:00
John Keiser
ae1bd891e7
Remove deprecated uses of parse_many
2020-06-21 11:19:06 -07:00
Daniel Lemire
d830422489
Put back the amalgamation files and add tests ( #929 )
...
Co-authored-by: John Keiser <john@johnkeiser.com>
Co-authored-by: Daniel Lemire <lemire@gmai.com>
2020-06-12 17:57:45 -04:00
John Keiser
1aab4752e2
Store all parser state in the implementation
2020-06-01 12:15:54 -07:00
Daniel Lemire
12150baa5e
Using just ASCII. ( #899 )
...
* Using just ASCII.
* Let us prune checkperf.
* Moving the description of lookup2 to the HACKING.md file.
2020-05-21 21:59:06 -04:00
Daniel Lemire
d2c9ea8a9a
Detect bash instead of relying on MSVC detection. ( #894 )
2020-05-20 12:13:14 -04:00
Daniel Lemire
40d57da83c
fixes issue 891 ( #893 )
2020-05-20 11:54:53 -04:00
John Keiser
e6c9dfbd91
Make include files more fine-grained
2020-05-19 14:42:04 -07:00
John Keiser
64abc3e86c
Include top-level .h files outside #if statements
2020-05-19 13:33:14 -07:00
John Keiser
fac42fa3e8
Generate relative filenames properly in amalgamation
2020-05-19 13:32:38 -07:00
Daniel Lemire
3c3a4db54e
Compile under Visual Studio for ARM64 ( #861 )
...
* Modifications so that we can compile under Visual Studio for ARM64
* Let us throw appveyor at this beast.
2020-05-06 23:08:10 -04:00
Daniel Lemire
0e6bd2224f
Fixes issue 863 ( #864 )
...
* Fixes issue 863
2020-05-06 22:38:49 -04:00
John Keiser
afb369950c
Disable Intellisense-only warnings in simdjson.h/cpp
2020-05-04 11:47:04 -07:00
John Keiser
d7f133c24c
Reamalgamate
2020-05-04 11:36:00 -07:00
Furkan Usta
064eb0b24f
CMake: Make simdjson-internal-flags subsume simdjson-flags
2020-05-03 02:48:29 +03:00
Furkan Usta
af968c5b44
Merge branch 'master' of github.com:simdjson/simdjson into cmake-flags
2020-05-03 02:12:23 +03:00
John Keiser
1d519aa9cb
Merge pull request #854 from furkanusta/fix808
...
Add path information back to amalgamate.sh (Fixes #808 )
2020-05-02 09:21:53 -07:00