Hans Dembinski
e415be10cd
fix for fill segfault
...
old code allowed to pass sequences of length 1 with sequence of length N > 1, which is invalid
2019-11-21 12:35:37 +01:00
Hans Dembinski
be058afcaf
fix for axis::get on a variant of pointers
...
* `axis::get<axis_t>(hist.axis(0))` failed, when hist uses an axis tuple
* added missing test for this case
2019-11-21 00:36:59 +01:00
Hans Dembinski
b1988cd75d
make serialize a member function for null_type
2019-11-21 00:24:32 +01:00
Hans Dembinski
e093ecd4b0
Fixes fill from strings and variant of value types and containers of value types
2019-11-21 00:23:10 +01:00
Hans Dembinski
d0c1ef5b27
Allow some empty axes
2019-11-18 23:20:34 +01:00
Hans Dembinski
b7fc900e3b
Better error messages when fill arguments do not match accumulator requirements
2019-11-06 00:19:41 +01:00
Hans Dembinski
f56337177d
Fix sample argument bug
...
fixes: a weight could pass as sample and vice versa
2019-10-31 01:45:02 +01:00
Hans Dembinski
3923472642
bug fix of indexed for array storage
2019-10-30 09:26:54 +01:00
Hans Dembinski
9669df7432
reduced usage of ostringstream in exceptions
2019-10-28 20:08:37 +01:00
Hans Dembinski
3b18d9075b
Better deduction guides for axis types and histogram
2019-10-27 17:27:26 +01:00
Henry Schreiner
bf7a97ae8b
Adding empty(hist, cov) ( #245 )
2019-10-27 09:42:24 +01:00
Hans Dembinski
4c1caf3462
removing callable_traits
...
* replacing callable_traits with private implementation
2019-10-26 13:12:45 +02:00
Hans Dembinski
c8b8c4d502
Fix accumulator issues ( #72 )
...
* add weighted_mean::sum_of_weights_squared
* sum of default constructed mean and weighted_mean is now equal to default constructed object
* thread-safe returns a reference to self in operators just like the other accumulators
2019-10-26 11:12:29 +02:00
Hans Dembinski
ebabd550a0
Replace detail::compressed_pair with boost::core::empty_value
2019-10-24 21:47:17 +02:00
Hans Dembinski
5e24146062
re-introduce optimizing array_wrapper for serialization
2019-10-22 23:35:36 +01:00
Hans Dembinski
c22e69c4f1
Build system fixes
...
- CMake: make compile-fail tests fail for the right reasons not because of missing headers
- CMake: run check_odr_test.py
- B2: actually run check_odr_test.py and check_build_system.py
2019-10-22 23:32:27 +01:00
Hans Dembinski
758c38e566
more testing for category axis
2019-10-22 19:23:04 +01:00
Hans Dembinski
9dd4a04a10
Separate serialization code from Boost.Serialization
2019-10-20 21:40:02 +01:00
Hans Dembinski
94857351cc
fix shrink when value is not exactly equal to bin edge
2019-10-19 19:04:13 +01:00
Hans Dembinski
307b65b7ab
Fix warnings in boost test matrix
...
* should fix warnings for gcc-6, clang-3.8 to 4.0, msvc-14.1 and 14.2
* should fix errors for clang-6 with cxxstd=17, clang-8 with cxxstd=2a
2019-10-19 15:14:10 +01:00
Hans Dembinski
b12898a366
Throw if user tries to make histogram with too many axes
2019-10-17 15:48:23 +02:00
Hans Dembinski
5a893c467c
fix compile issues on clang with cxxstd=latest
...
added tests of clang with cxxstd=latest to detect issue
2019-10-17 12:31:40 +02:00
Hans Dembinski
30899cb45d
Merged upgraded display.hpp code into histogram/ostream.hpp
...
supports all axis bin types and gracefully handles histograms with accumulators
2019-10-17 00:58:37 +02:00
Hans Dembinski
98926dbbb5
CI update, reduce reliance on Travis
...
* Appveyor now tests gcc-9 and clang with sanitizers
* Travis tests apple-clang on macOS and gcc-5, gcc-8 on linux and produces coverage report
2019-10-12 19:05:00 +02:00
Hans Dembinski
05c1bbfac1
Improve odr test ( #59 )
...
* rename link test to odr test and check odr test completeness
* added convenience header for algorithm
* added minimal docs for axis.hpp, accumulators.hpp, algorithm.hpp
* temporarily remove display.hpp (will return in another patch)
2019-10-12 15:12:53 +02:00
Henry Schreiner
493a195a54
Fixing missing inline, adding link test ( #231 )
2019-10-08 10:10:23 +02:00
Hans Dembinski
92a873c746
Faster linearize ( #230 )
...
* introduce offset for faster linearization of non-growing axes
* added traits::is_inclusive and constexpr bool inclusive() methods for builtin axes
* bug fixes for fill method when weight array is used with non-inclusive axis and when growing axes are used
* bug fix of axis::options::test(...)
* coverage tested with gcc-8, updated CONTRIBUTING.md with coverage info
2019-10-06 23:03:45 +02:00
Hans Dembinski
0101f698bb
check build system ( #228 )
...
make sure that all implemented tests are actually run
2019-09-29 13:33:20 +02:00
Hans Dembinski
ffe3e4d68c
assert on and test invalid combinations of axis options ( #227 )
2019-09-29 12:56:11 +02:00
pb
892cc9c4d7
ASCII output for 1D histograms ( #201 )
2019-09-28 16:41:00 +02:00
Hans Dembinski
b4298d6857
faster axis integer value method ( #220 )
2019-09-27 01:09:25 +02:00
Hans Dembinski
6b767cc2aa
update axis::traits ( #217 )
...
* added traits:::is_continuous, traits::value_type
* use of static_options on qualified types is now invalid
2019-09-24 23:05:03 +01:00
Hans Dembinski
c5c251fdbf
return copy instead of reference for scalar types ( #218 )
2019-09-24 22:41:49 +01:00
Hans Dembinski
937732c88e
fixes for C++20 ( #215 )
2019-09-12 21:26:16 +02:00
Hans Dembinski
0d893d4eff
adding weight support for mean accumulator ( #212 )
...
changed type of sum to RealType for mean and added serialization tests for builtin accumulators
2019-09-12 08:08:39 +02:00
Hans Dembinski
af04e75edc
Fix project bug ( #207 )
...
fix for a seg fault, when there are too many passed indices
2019-08-25 19:01:09 +02:00
Hans Dembinski
016532f011
Histogram fill method ( #54 )
...
huge refactor, various speed improvements, potential for further improvements and parallelization
2019-08-19 23:55:43 +02:00
Hans Dembinski
df647cf959
update copyright ( #55 )
...
* add missing copyright notices
* workaround for xml_iarchive bug to handle XML with comments
* fixing min/max according to boost guidelines
2019-08-19 16:53:27 +02:00
Hans Dembinski
6df7625740
added axis::rank
2019-08-07 11:20:32 +02:00
Hans Dembinski
ac79060944
fix axis::traits::update
2019-07-12 09:58:48 +02:00
Hans Dembinski
3a510aba6d
extended comment to explain the issue
2019-06-10 16:53:04 +02:00
Hans Dembinski
7e40aaf689
internal operators library replaces duplicated code
2019-06-10 16:05:51 +02:00
Hans Dembinski
a06505d877
Get full coverage with tests only
2019-06-08 16:28:56 +02:00
Hans Dembinski
e7a2051c2c
simpler xml path setting and persistent serialization tests for unlimited_storage
2019-06-07 14:25:49 +02:00
Hans Dembinski
1de7cf8bad
define restricted environment and make tests compile in it
2019-06-07 13:41:31 +02:00
Hans Dembinski
8260deaa1d
Forward iterators for indexed range
...
* add tests of stdlib algorithms that use forward iterators
* make accessor non-copyable, implicitly convertible to value, assign pass-through, add comparison operators
* updated docs
2019-06-06 23:04:27 +02:00
Hans Dembinski
2239314eed
variant2 instead of detail::variant
2019-06-03 22:14:50 +02:00
Hans Dembinski
885a8b93e5
copy version check from boost.assert and update version
2019-06-03 22:00:15 +02:00
Hans Dembinski
5f3f9d8fd7
Benchmark improvements and scripts to research history
...
* allow benchmarks to run in isolation, new scripts to run historic benchmarks
* make sure variant is never trivial in tests and benchmarks
2019-06-02 19:46:57 +02:00
Hans Dembinski
96926f367f
splitting meta.hpp into parts
2019-05-31 16:46:49 +02:00