Daniel Lemire
33b014dd23
We do not try to silence -Wmaybe-uninitialized under clang.
2022-05-26 14:21:22 -04:00
Daniel Lemire
c8f5f376a0
Making AVX-512 available by default.
...
Silencing some maybe-uninitialized warning under GCC (warning appears in the standard library).
Making the Python amalgamation script a bit more Windows friendly.
2022-05-26 14:07:15 -04:00
Daniel Lemire
ce74ece545
Preparing release.
2022-05-25 11:43:06 -04:00
Daniel Lemire
e8f370b085
Basic AVX-512 implementation (icelake or better) ( #1813 )
...
* Add cascadelake implementation, which use AVX512 Intrinsics to optimize performance(#1811 )
Co-authored-by: mellonyou <fangzheng.zhang@intel.com >
Co-authored-by: wanweiqiangintel <weiqiang.wan@intel.com >
2022-05-25 11:14:02 -04:00
Dirk Stolle
82433a67f9
fix a few typos ( #1829 )
2022-05-20 13:31:30 -04:00
Daniel Lemire
8c1bfe782b
Adds 'current_depth()'. ( #1824 )
2022-05-17 18:06:42 -04:00
Daniel Lemire
730939f01c
Better documentation regarding the direct get_number_type() method. ( #1821 )
2022-05-13 15:31:09 -04:00
Daniel Lemire
b169dc2ea7
Fixing get_number_type() ( #1819 )
2022-05-12 12:15:38 -04:00
Andrei Gritsiuk
203c03e90b
resolves #1784 - GCC 11.1.0 and CLang 12.0.0 complain on 'and' operator in padded_string-inl.h ( #1785 )
...
Co-authored-by: Andrei <C:\Users\Andrei\AppData\Roaming\The Bat!>
2022-01-31 11:38:54 -05:00
Ivan Volnov
6698eb96b9
Fix C++20 build warnings ( #1782 ) ( #1787 )
...
* Fix C++20 build warnings (#1782 )
* Build fix for ppc64 (#1782 )
2022-01-20 14:16:27 -05:00
pkubaj
30f7de387c
Fix build on FreeBSD/powerpc64* ( #1786 )
...
FreeBSD uses sys/endian.h and bswap64().
2022-01-18 11:21:47 -05:00
Piotr Doan
e0788507fe
Missing value::get() template specialization for number ( #1779 )
2022-01-11 12:07:20 -05:00
Daniel Lemire
c6f9c93c33
Use static variables to enforce initialization order. ( #1773 ) ( #1777 )
...
Fixes https://github.com/simdjson/simdjson/issues/1771
Co-authored-by: Hao Chen <chenhao.yalier@gmail.com >
2022-01-03 15:54:57 -05:00
Daniel Lemire
6db8ceb46c
Verify and fix 1768. ( #1769 )
...
* Verify and fix 1768.
* Breaking down the namespaces for C++11 compilers.
2021-12-21 15:12:38 -05:00
N. Kolotov
7e1893db42
Added SIMDJSON_ prefix to STRINGIFY and to NO_SANITIZE_UNDEFINED macros. ( #1766 )
2021-12-21 09:53:06 -05:00
Daniel Lemire
b4b1927b0f
Making the documentation more explicit. ( #1765 )
2021-12-21 09:51:20 -05:00
epoll-reactor
69ee84973a
Fix some typos in source files. ( #1761 )
...
Co-authored-by: epoll-reactor <>
2021-12-06 16:56:15 -05:00
epoll-reactor
003d970cd2
Fix -Wredundant-decls warning in json_type.h. ( #1759 )
...
Co-authored-by: threadpoolexecutor <davidkor77@gmail.com >
2021-12-02 13:49:48 -05:00
Daniel Lemire
2763f7e719
Fixing issue 1755 ( #1756 )
2021-11-24 09:28:28 -05:00
Daniel Lemire
9cb0c5f92d
Patching. ( #1750 )
2021-11-05 19:46:57 -04:00
Daniel Lemire
1b01969bda
Adding tests for issue 1745. ( #1746 )
...
* Adding tests for issue 1745.
* Tweaking the documentation so that it is clearer.
2021-11-03 10:12:18 -04:00
Daniel Lemire
17f3148ac7
Version 1.0.2.
2021-10-27 19:29:42 -04:00
Daniel Lemire
35b4a48e99
Fixing issue 1742 ( #1743 )
...
* Fix for issue 1742.
* Some additional tests.
2021-10-27 19:25:23 -04:00
mir4cle
c0d18452fc
Add an option to get current location from value ( #1738 )
...
Co-authored-by: Igor Logvanev <igor.logvanev@aimtech.team >
2021-10-24 16:55:49 -04:00
Daniel Lemire
e5c9a310cf
Preparing release 1.0.1.
2021-10-20 12:18:04 -04:00
Daniel Lemire
6d308a08c5
Fixing issue 1736 ( #1737 )
...
* Fixing issue 1736
* Updating google benchmark.
* Minor trimming.
* Using the variable (to silence a warning).
* Adding assignment operator.
2021-10-20 12:15:35 -04:00
Daniel Lemire
9e477ddb00
Let us try to improve the documentation so that it is clearer. ( #1733 )
...
* Let us try to improve the documentation so that it is clearer.
* Minor tweaks.
2021-10-19 13:09:41 -04:00
Daniel Lemire
41cb909604
Minor change to handle paranoid compilers. ( #1732 )
2021-10-12 17:23:45 -04:00
Daniel Lemire
91908ade4d
Additional documentation following issue 1723 ( #1724 )
...
* Some extra documentation regarding issue 1723.
* Adding comments.
* Minor fix.
* [no ci] more documentation
2021-10-09 11:41:20 -04:00
Madhur Chauhan
4e609aa955
fix redundant ; in document-inl.h ( #1715 )
2021-09-17 14:02:03 -04:00
Daniel Lemire
af4ff7cc33
Adding fast "get_number_type()" function, bypassing "get_number()" ( #1713 )
...
* Adding fast "get_number_type" function, bypassing "get_number"
* Minor tweak.
* Adding missing get_number_type().
2021-09-07 14:34:40 -04:00
Nicolas Boyer
c9179ad81d
Add count_fields method for objects ( #1712 )
...
* Implement count_elements for object
* Add count_elements() for simdjson_result
* Add count_elements for documents(arrays,objects).
* Add tests for objects.
* Add tests for documents array. Typos.
* Renaming to count_fields() for objects.
* Update doc.
* Apply patch
2021-09-02 16:18:48 -04:00
Daniel Lemire
d6b5124c88
Pushing the release 1.0.0 candidate. ( #1709 )
2021-09-01 15:25:45 -04:00
Dougall Johnson
64b62fd3b3
simd8x64::compress optimisation for Apple M1 ( #1708 )
...
* Optimized the arm64 implementation of simd8x64::compress
This is ~35% faster on the fast_minify benchmarks on Apple M1
* Return byte-count from simd8x64::compress
This avoids a redundant popcount on ARM, for ~3% faster minify
on Apple M1
2021-09-01 15:25:11 -04:00
Daniel Lemire
cebe3fb299
Tweaking current_location(). ( #1707 )
...
* Tweaking current_location().
* Well.
2021-08-28 20:19:30 -04:00
Nicolas Boyer
ed7343f7f2
Provide current location in JSON input ( #1695 )
...
* Setup.
* Add current_location().
* Make return simdjson_result and fix cast issues.
* Whitespace.
* Add broken JSON tests. Add null parser check.
* Remove unused variables.
* Alive fix.
* Fix merge issues.
* Simplification for out of bounds.
* More tests.
* Move pointer back for unrecoverable errors.
* Add new error OUT_OF_BOUNDS
* Remove unnecessary include and fix OUT_OF_BOUNDS.
* Add more tests. Fix unrecoverable errors.
* Fix tests.
* Modify one test.
* Update doc.
* Typos.
* Add read_me tests.
* Update doc.
* Add current_location for simdjson_result and document_reference
* Typos.
Co-authored-by: Daniel Lemire <lemire@gmail.com >
2021-08-27 13:41:59 -04:00
Daniel Lemire
35158257c6
Implementing get_number for the document instances. ( #1706 )
2021-08-27 10:26:01 -04:00
Daniel Lemire
b935ce2e06
Allowing casts instead of get_double, get_uint64 and get_int64 ( #1705 )
2021-08-27 10:25:17 -04:00
Daniel Lemire
4afe7565b4
ondemand dynamically-typed numbers ( #1704 )
...
* Building up a number type.
* Implemented is_integer and is_negative.
* Implemented get_number in value_iterator.
* Final prototype.
* [no ci] typo
2021-08-26 12:16:44 -04:00
Daniel Lemire
6bed34ad61
This exposes 'reset' for object and array instances. ( #1696 )
...
* This exposes 'rewind' for object and array instances.
* Putting really_inline back to count_elements()
* Update array.h
* Adding empty array rewind.
* Adds "is_empty" method to arrays.
* More fragmentation.
* Tweaking implementation.
* Fixing issue with get_value() on document instances.
* Changing the name of the new rewind functions to reset.
2021-08-21 10:23:59 -04:00
Daniel Lemire
0ad52a7e22
Renaming scalar to is_scalar. ( #1698 )
2021-08-21 10:23:22 -04:00
Daniel Lemire
aa52cf6868
Alive fix. ( #1700 )
2021-08-21 10:22:59 -04:00
strager
d036fdf919
Reduce #include bloat (<iostream>) ( #1697 )
...
Including <iostream> has two problems:
* Compile times are worse because of over-inclusion
* Binary sizes are worse when statically linking libstdc++ because
iostreams cannot be dead-code-stripped
simdjson only needs std::ostream. Include the header declaring only what
we need (<ostream>), omitting stuff we don't need (std::cout and its
initialization, for example).
This commit should not change behavior, but it might break users who
assume that including <simdjson/simdjson.h> will make std::cout
available (such as many of simdjson's own files).
2021-08-13 11:24:36 -04:00
Daniel Lemire
de4deb8c4e
Makes it possible to cast a document to a value. ( #1690 )
...
* Makes it possible to cast a document to a value.
2021-08-11 20:02:30 -04:00
Daniel Lemire
19902abaf8
Guarding first/second access. ( #1688 )
...
* Guarding first/second access.
* Correcting our own usage.
* Adding more documentation.
2021-08-06 20:25:05 -04:00
Daniel Lemire
06643fc9f5
Additional tests and document tuning ( #1684 )
...
* Additional example.
* Adds more tests.
* Actually using the variable.
2021-08-02 16:35:02 -04:00
Daniel Lemire
0fa68d8930
Fixing noexcept on operator << with simdjson_result. ( #1678 )
...
* Additional tests.
* Finishing touch.
* Extending to IO.
2021-07-31 17:54:27 -04:00
Dirk Stolle
5f0b35b2c5
update string_view lite to version 1.6.0 ( #1677 )
...
This is the header as seen in the current master branch,
commit d27d7b5081406a35b41cb16b321be8833b4cd811, on
<https://github.com/martinmoene/string-view-lite >.
2021-07-31 11:19:51 -04:00
Daniel Lemire
d83e69d977
Fix an issue with truncated-byte function. ( #1674 )
2021-07-30 13:12:42 -04:00
Daniel Lemire
eb93b98d6a
verify and fix issue 1668 ( #1673 )
...
* Adding test.
* Verifies and fix issue 1668. This commit updates the previous behavior of the
On Demand stream support by return a value type (document_reference) instead
of a reference to a document. This allows us to bridge with the usually simdjson
error system, with its simdjson_result types.
* Minor reformat.
* Adds a test with initial tests passing.
* Adding an example.
2021-07-27 08:51:07 -04:00