Jonas Hoppe
b05b3796ce
[PR] move is_mp_units_stream to detail and change from concept to constexpr function
2024-09-04 09:49:04 +02:00
Jonas Hoppe
712afc34b7
[PR] rename macros to match naming conventions for workaround
2024-09-04 09:37:41 +02:00
Jonas Hoppe
d18bb28a25
[PR] remove MP_UNITS_TYPENAME
2024-09-04 09:32:21 +02:00
Jonas Hoppe
d1897b1fe9
[PR] change disable error to macro
2024-09-04 09:28:44 +02:00
Jonas Hoppe
0b0d3345e5
[clang-format]
2024-09-03 13:17:44 +02:00
Jonas Hoppe
b5c9dca61f
[naming] change some more names
2024-09-03 12:31:19 +02:00
Jonas Hoppe
48c4f297c8
[hacks] add MP_UNITS_IS_CONST_EXPR(from)
2024-09-03 12:27:57 +02:00
Jonas Hoppe
a89bfc6c21
[hacks] add MP_UNITS_IS_VALUE
2024-09-03 12:14:42 +02:00
Jonas Hoppe
5ae1304eee
[hacks] add MP_UNITS_EXPRESSION
2024-09-03 12:07:08 +02:00
Jonas Hoppe
e258009a6a
[msvc][fmt] diable warning in smalest scope
2024-09-03 11:27:53 +02:00
Jonas Hoppe
4d715734bf
[msvc][fix] update changes for master
2024-09-03 11:27:44 +02:00
Jonas Hoppe
918a8b7e8f
[msvc][fix] parse error in refernce.h. resolved with more brackets.
2024-09-03 09:59:18 +02:00
Jonas Hoppe
3a6fc90c7b
[msvc][fix] compiler does not get that expression can be evalutated to a const. (caused by read of variable outside its lifetime)
2024-09-03 09:47:11 +02:00
Jonas Hoppe
cea5d70dc0
[msvc][fix] disable C4702 unreachable code
2024-09-03 09:45:41 +02:00
Jonas Hoppe
924782f557
[mscv][fix] weird problem with PO in quantity_point.h. replace with point_origin where needed
2024-09-03 09:45:35 +02:00
Jonas Hoppe
3d32d5d833
[msvc][fix] internal compiler error for requires expression. "simplify" with extra concept
2024-09-03 09:43:38 +02:00
Jonas Hoppe
5e657bac70
[msvc][fix] msvc complains about requires expression (no common type found) replace with concept has_common_type
2024-09-03 09:43:37 +02:00
Jonas Hoppe
464c55538f
[msvc][fix] resolve ambigious call to find_first_of
2024-09-03 09:43:37 +02:00
Jonas Hoppe
19e358e56d
[mscv][fix] string_view iterator is not castalbe to char
2024-09-03 09:43:37 +02:00
Jonas Hoppe
30ac2882bd
[msvc][fix] a lot of brackets where msvc prefers
...
the type and not the value. (Issue reported)
2024-09-03 09:43:34 +02:00
Jonas Hoppe
5d3ed201b6
[msvc][fix] some short names hide global identifier
2024-09-03 09:42:57 +02:00
Jonas Hoppe
aa26488b60
[msvc][fix] msvc compiler has different behaviour for *= and * at compile time (issue reported)
2024-09-03 09:42:57 +02:00
Jonas Hoppe
33837c5042
[msvc][fix] some short names hide global identifier
2024-09-03 09:42:48 +02:00
Mateusz Pusz
f0e19d004c
fix: the remaining pascal macro conflicts fixed
...
Resolves #605
2024-08-25 17:31:58 +02:00
Mateusz Pusz
77625d63cb
feat: 💥 unit_can_be_prefixed removed - from now on all named units can be prefixed
...
Resolves #604
2024-08-22 08:06:00 +02:00
Mateusz Pusz
f983c31eb2
fix: workaround for linking issues on the older clang compilers
2024-07-30 16:07:45 +02:00
Chip Hogg
f088d544b3
Fix known errors
2024-07-29 20:43:06 -04:00
Chip Hogg
e2829de1c8
Merge branch 'master' into chiphogg/sqrt-mag#474
2024-07-29 20:36:40 -04:00
Mateusz Pusz
d04d546b17
fix: target_compile_definitions scope fixed for import std;
2024-07-29 10:04:07 +02:00
Chip Hogg
f6696e8f68
Fix formatting
2024-07-24 19:48:05 -04:00
Chip Hogg
7e894788d7
Compute values for rational magnitude powers
...
Since this will only ever be done at compile time (as guaranteed by
using `consteval`), we can afford to prioritize precision over speed.
To compute an Nth root, we simply do a binary search over representable
floating point numbers, looking for the number whose Nth power most
closely matches the original number.
Fixes #494 . We have included a test case reproducing the original
problem exactly. All tests use "within 4 ULPs" as the criterion, which
is (I believe) equivalent to the googletest `EXPECT_DOUBLE_EQ`
criterion.
2024-07-24 10:31:44 -04:00
Mateusz Pusz
f9ae701b4e
fix: MP_UNITS_BUILD_IMPORT_STD verification fixed
2024-07-17 21:31:28 +02:00
Mateusz Pusz
27bd2690bd
fix: preventing import std; in GMF
2024-07-16 20:50:04 +02:00
Mateusz Pusz
2411a7ef12
build: minimum required CMake version bumped to 3.25
...
Resolves #597
2024-07-16 20:35:05 +02:00
Mateusz Pusz
2e1e4f122a
chore: update CMakeLists.txt option description for building as system headers
2024-07-16 17:37:19 +02:00
Mateusz Pusz
b870b85c25
feat: import std; support added
...
Resolves #595
2024-07-16 17:36:00 +02:00
Mateusz Pusz
d51fb6d6c1
refactor: consistent std::size_t usage
2024-07-16 12:12:54 +02:00
Mateusz Pusz
fcc16ae282
feat: convertibility of a quantity with a unit one with the raw value added
...
Resolves #553
2024-07-14 18:31:11 +02:00
Mateusz Pusz
0dfd323c4b
feat: ValuePreservingTo extended with the explicit convertibility requirement
2024-07-14 18:06:02 +02:00
Mateusz Pusz
73f7901329
build: duplicated cmake_minimum_required commands removed
...
Resolves #592
2024-07-14 18:04:05 +02:00
Mateusz Pusz
e2a0e678a1
refactor: small cleanup in the quantity.h
2024-07-13 08:37:40 +02:00
Mateusz Pusz
fa25d11275
refactor: ValuePreservingTo concept added
2024-07-13 08:36:48 +02:00
Mateusz Pusz
498d895fe5
fix: designated initialization of extract_results removed to enable clang-16 compilation
2024-07-12 18:47:19 +02:00
Mateusz Pusz
adbc77432e
feat: all tags in the expression templates are now ordered by the type names
...
Resolves #499
2024-07-12 17:48:38 +02:00
Mateusz Pusz
f0e94e06da
fix: quantity_spec_interface_base introduced to fix the compilation on the older compilers
2024-07-12 17:10:30 +02:00
Mateusz Pusz
0010d868a7
feat: tag types-related operators are now hidden friends as well
...
Resolves #591
2024-07-12 16:01:03 +02:00
Mateusz Pusz
b5e8f2afcd
fix: si.h and angular.h now properly include hacks.h to define MP_UNITS_HOSTED before its usage
2024-07-12 15:03:19 +02:00
Mateusz Pusz
bc234b0093
fix: disabled partial convertibility of binary operators arguments
2024-07-12 15:02:29 +02:00
Mateusz Pusz
e5e0e47c36
refactor: small quantity and quantity_point interface cleanup
2024-07-11 20:06:00 +02:00
Mateusz Pusz
a70ef1ebc3
Revert "fix: disabled convertibility of quantity binary operators arguments"
...
This reverts commit 037964bbba .
2024-07-11 18:05:51 +02:00