Commit Graph

651 Commits

Author SHA1 Message Date
Hans Dembinski
073dffdf09 More doc improvements 2019-04-28 12:22:49 +02:00
Hans Dembinski
22ec005290 Doc improvements
* preprocessor workarounds replaced by xml postprocessing
* better hide what's users shouldn't see
* big doc improvements everywhere
2019-04-27 15:59:50 +02:00
Hans Dembinski
9d25923b82 fix reduce when axis has no reduce support
- added is_reducible trait
- throw when axis is not reducible but reduction requested
2019-04-26 23:31:56 +02:00
Hans Dembinski
5c75437db5 project algorithm generalized
project now also works with static histogram and iterable arguments
2019-04-26 17:15:13 +02:00
Hans Dembinski
5b6cdc8861 fix for bug in reduce with mixed axis types in std::vector<axis::variant> 2019-04-26 10:22:18 +02:00
Hans Dembinski
329fcf6855 Fix missing coverage and allocator-fail logic
* fixed allocator-failing code with better mock allocator; 100 % code coverage on all platforms
* fixed and refined use of safe comparison of number types
2019-04-23 23:25:05 +02:00
Hans Dembinski
6b386c9b51 increase coverage
* provide unsafe access to buffer
* factored mp_int out into separate header and renamed to large_int
* refined adding behavior
* more warnings and comeback of coverage variant
* better coverage reporting
2019-04-22 03:33:05 +02:00
Hans Dembinski
02348a74e1 Replace boost::iterator_adaptor with private iterator_adaptor to reduce dependencies 2019-04-19 23:07:23 +02:00
Hans Dembinski
7b88f02f0e fix for threading bug 2019-04-16 23:01:00 +02:00
Hans Dembinski
45a4ae1e19 simplify 2019-04-16 22:31:24 +02:00
Hans Dembinski
eb95a8975d simplified traits, new try_cast, moved static_if to extra header 2019-04-16 22:00:31 +02:00
Hans Dembinski
47dda5edfc remove double implementation 2019-04-16 20:01:58 +02:00
Hans Dembinski
77f366b7c1 explicit zero-ing 2019-04-15 00:46:50 +02:00
Hans Dembinski
1bf9dd9dfd thread-safe storage
- new thread-safe accumulators for arithmetic types
- storages have a new flag `has_threading_support` to indicate support for parallel cell access
- histogram automatically synchronises growing axes and storage if necessary
2019-04-14 22:24:34 +02:00
Hans Dembinski
23fd6f27d1 hot-fix for variant warning 2019-04-14 14:34:10 +02:00
Hans Dembinski
7301d6a4c2 optimization for static axes with same axis type 2019-03-21 16:59:24 +01:00
Hans Dembinski
37edc673fa fix msvc warnings (#3)
* removes warnings on msvc
* fixes ==, <, > comparison for mixed signed/unsigned types in unlimited_storage
2019-03-21 16:59:05 +01:00
Hans Dembinski
43f88383ac bug-fix growing and non-growing axis in variant (#4) 2019-03-20 22:39:03 +01:00
Hans Dembinski
11c9da8f33 Add axis traits docs (#1)
add missing doxygen docs for axis::traits and more tests of axis::traits
2019-03-18 16:05:08 +01:00
Hans Dembinski
d1d5e37788 make metadata_type private to be consistent with any axis 2019-03-18 15:53:26 +01:00
Hans Dembinski
c4a3d7da4a fix naming error extend -> extent 2019-03-18 15:52:19 +01:00
Hans Dembinski
c4f9779524 axis::variant uses composition instead of inheritance (#171)
... to avoid problems with unwanted calls to the constructor of boost::variant
2019-03-14 10:30:25 +01:00
Hans Dembinski
478a06ea30 Option tag (#167)
replace option system with simpler and future-safe system
2019-03-06 15:25:11 +01:00
Hans Dembinski
5dd50985ae Concepts (#166)
* concept docs rewritten, adapting to tabular style as in Beast and cppreference.com
* update the readme with correct links and text
* removed necessity to add `storage_tag` member type to storage classes
2019-03-05 01:52:01 +01:00
Hans Dembinski
94c1563ae7 improved wording, make using namespace consistent, fixed missing section about 2d axes 2019-02-24 23:20:25 +01:00
Hans Dembinski
ff97700470 * finishing the user guide
* get master badges back
2019-02-24 22:14:30 +01:00
Hans Dembinski
468510a443 fix accumulator support 2019-02-24 13:25:54 +01:00
Hans Dembinski
503541b2d4 decltype(auto) doesnt work on older compilers 2019-02-23 22:44:45 +01:00
Hans Dembinski
9561eb8b12 simplifying variant implementation 2019-02-23 22:25:54 +01:00
Hans Dembinski
2a92ecb9a1 use use_default from core instead of custom type 2019-02-23 21:34:24 +01:00
Hans Dembinski
6af776020f fix 2019-02-22 00:21:16 +01:00
Hans Dembinski
266e1a69f2 Feature/operators (#162)
* better operators for mp_int, unlimited_storage::reference, map_impl::reference, copying code from boost.operators 
* treat warnings as errors on travis
* make appveyor build feature branches
2019-02-20 09:15:14 +01:00
Hans Dembinski
2568a68f76 msvc fixes, simplification and bug-fixes of mp_int, more test coverage (#159)
* fixes broken msvc build
* smaller xml files for testing serialization
* fixing many warnings on msvc
* bug-fixes to mp_int regarding operators and new tests to check their behavior 
* don't expect iterable histogram::at to have size method
* build benchmarks in release mode
* test everything by default when b2 is run on project directory
* more test coverage
2019-02-18 10:04:27 +01:00
Hans Dembinski
9abbe46e3d CI & doc update, removed multiprecision::cpp_int, simpler axis implementation, use_default to set default options
* Travis uses b2 and codecov now
* replacing boost::multiprecision with custom implementation to avoid the dependency
* improved axis implementation: `update` is now a normal method
* introduced use_default tag type to set defaults
* whitespace fixes and doc update
2019-02-17 13:37:50 +01:00
Hans Dembinski
3b110fc2a5 tabs to space, replace non-ascii [ci skip] 2019-02-11 22:30:41 +01:00
Hans Dembinski
e1837c6d40 avoid allocator<void> warning [ci skip] 2019-02-11 21:22:40 +01:00
Hans Dembinski
4a2e3db0e0 upload edits on docs and minor code fixes (#152)
* renaming naked to remove_cvref_t
* more static_asserts to check implicit conditions
* use new BOOST_TEST_TRAIT_SAME
* reorganize and add operator tests, fixes for array and map adaptors
* improved map adaptor
* storage does not have to support scaling operator anymore
* doc improvements
2019-02-10 22:45:00 +01:00
Hans Dembinski
53b66cafc8 squash a few warnings on the boost matrix 2019-02-09 17:11:42 +01:00
Hans Dembinski
a2dcbdccd9 doc improvements 2019-02-07 22:57:08 +01:00
Hans Dembinski
1aeeddd6a8 be more self-documenting [ci skip] 2019-02-06 23:53:45 +01:00
Hans Dembinski
f20abe19fb rename adaptive_storage to unlimited_storage, closes #150 2019-02-06 23:34:58 +01:00
Hans Dembinski
df4fefac18 histogram supports add, sub, mul, div 2019-02-06 00:29:22 +01:00
Hans Dembinski
6decac4755 fix ci 2019-02-05 13:00:56 +01:00
Hans Dembinski
017fa5a3a6 fix ci 2019-02-05 09:41:33 +01:00
Hans Dembinski
6cd4e59ed4 remove warnings by making conversion explicit 2019-02-05 09:34:11 +01:00
Hans Dembinski
5a5730e9cd more asserts 2019-02-05 00:26:56 +01:00
Hans Dembinski
c1bc7cbed8 getting rid of buffer.hpp, simplified adaptive_storage, make buffer is never in invalid state because of throw 2019-02-05 00:25:24 +01:00
Hans Dembinski
5c0c5f59b4 protect against invalid state after exception 2019-02-04 02:10:22 +01:00
Hans Dembinski
0b6763391e no unnamed namespace in header allowed 2019-02-04 02:10:03 +01:00
Hans Dembinski
d1f5156b7c test for overflow 2019-02-04 01:58:07 +01:00