Commit Graph

1828 Commits

Author SHA1 Message Date
Mateusz Pusz
eeece8a356 feat: scaled_unit does not have a priority over derived_unit anymore
We want `pow<2>(mag<3600> * second)` to print `[3600 s]^2` and `42 * (mag<10> * metre) / (mag<20> * second)` to print `42 [10 m]/[20 s]`
2024-10-02 16:10:29 +02:00
Mateusz Pusz
d7309c8602 feat: scaled_unit symbol printing improved ([] around the entire unit, small magnitude values do not use a power of 10 anymore) 2024-10-02 15:27:38 +02:00
Mateusz Pusz
61817ae61f refactor: abs moved to constexpr_math.h 2024-10-02 15:24:52 +02:00
Mateusz Pusz
25e99fe0fa feat: common unit symbols now use EQUIV{u1, u2, ...} syntax 2024-10-02 08:14:37 +02:00
Mateusz Pusz
0d00be067a refactor: convertible(U1, U2) implementation simplified 2024-10-01 21:37:31 +02:00
Mateusz Pusz
246defb9b2 fix: constraits for magnitude added for scaled_unit and fixed common_unit instantiating it incorrectly 2024-10-01 21:36:33 +02:00
Mateusz Pusz
47344b13bd refactor: pi mag_constant refactored to be one-liner 2024-09-28 15:20:41 +02:00
Mateusz Pusz
fcbd172135 feat: iec::bit using-declared in iec::unit_symbols 2024-09-28 15:08:36 +02:00
Mateusz Pusz
fb8f67c68a refactor: 💥 all iec quantity specifications are now deprecated and moved to isq
IEC 80000-13 is a part of ISQ so quantity specifications should be in an `isq` namespace.
2024-09-28 15:06:22 +02:00
Mateusz Pusz
5a48f19746 feat: 💥 phase_velocity and group_velocity aliases removed from ISQ by ISO 2024-09-28 11:58:28 +02:00
Mateusz Pusz
1c8b8ff8e9 fix: missing are_ingredients_convertible overloads added 2024-09-27 19:16:11 +02:00
Mateusz Pusz
7fabd975dc chore: mp-units version bumped to 2.4.0 2024-09-27 13:38:51 +02:00
Mateusz Pusz
7ea1ea0ff7 fix: __cpp_deleted_function workaround for clang-19 added 2024-09-27 11:59:37 +02:00
Mateusz Pusz
3190d15eba feat: common_unit support added 2024-09-26 20:28:41 +02:00
Mateusz Pusz
25af8c9d8f feat: for_each on std::tuple added 2024-09-26 16:40:20 +02:00
Mateusz Pusz
922907890f feat: type_list_unique added 2024-09-26 13:05:01 +02:00
Mateusz Pusz
a27089cb9c Revert "build: clang no longer needs a workaround for 75057"
This reverts commit a7471ead84.
2024-09-26 10:30:34 +02:00
Mateusz Pusz
a7471ead84 build: clang no longer needs a workaround for 75057 2024-09-26 10:24:32 +02:00
Mateusz Pusz
028410941d feat: multiply syntax for offset units marked as deprecated 2024-09-26 10:23:26 +02:00
Mateusz Pusz
1caa7b7406 feat: iec80000 namespace marked as deprecated 2024-09-26 10:22:43 +02:00
Mateusz Pusz
fe1fab03a3 feat: mag_pi marked as deprecated 2024-09-26 10:20:45 +02:00
Mateusz Pusz
8c12f95ee5 Revert "feat: 💥 variadic template versions of get_common_XXX() removed (only 2-argument overloads used in practice)"
This reverts commit ab888aaecd.
2024-09-25 12:51:33 +02:00
Mateusz Pusz
ab888aaecd feat: 💥 variadic template versions of get_common_XXX() removed (only 2-argument overloads used in practice) 2024-09-24 18:22:00 +02:00
Mateusz Pusz
ed9e67537b fix: mag constraints fixed for clang-17 2024-09-24 10:12:47 +02:00
Mateusz Pusz
e23e185cce fix: missing header files added to constexpr_math.h 2024-09-24 10:09:19 +02:00
Mateusz Pusz
dcab80525d refactor: 💥 common_XXX() functions renamed to get_common_XXX()
This is needed to release a name for `common_unit` type that is coming soon.
2024-09-24 09:36:59 +02:00
Mateusz Pusz
0b265f362d refactor: is_derived_from_specialization_of_v added and applied to remove custom traits 2024-09-23 14:25:33 +02:00
Mateusz Pusz
dca6bc3555 refactor: unnecessary custom versions of is_specialization_of removed 2024-09-23 14:17:49 +02:00
Mateusz Pusz
3671f64153 refactor: 💥 magnitudes code cleanup + mag_pi is now mag<pi> 2024-09-23 13:42:39 +02:00
Mateusz Pusz
7a83c2b391 feat: iec::var unit added 2024-09-20 10:57:23 -06:00
Mateusz Pusz
e92178abef refactor: 💥 iec80000 system renamed to iec 2024-09-20 10:01:32 -06:00
Mateusz Pusz
e6c65d6c89 build: MP_UNITS_BUILD_IMPORT_STD CMake option removed 2024-09-20 09:34:38 -06:00
Mateusz Pusz
7f0dea9d18 feat: complex quantity character added 2024-09-19 21:57:03 -06:00
Mateusz Pusz
696f789e77 fix: complex_power & co fixed 2024-09-19 21:43:19 -06:00
Mateusz Pusz
64056ee321 build: target_compile_features now uses CMAKE_CXX_STANDARD 2024-09-19 14:50:32 -06:00
Mateusz Pusz
e9284652ab build: target_include_directories is not needed anymore 2024-09-19 14:47:36 -06:00
Mateusz Pusz
089ce3f9d9 style: pre-commit updated to clang-format-18.1.8 2024-09-17 20:48:05 -06:00
Mateusz Pusz
0c9e62a288 Merge branch 'master' of github.com:mpusz/units 2024-09-17 17:14:26 -06:00
Mateusz Pusz
910f5d5395 Merge branch 'master' of github.com:mpusz/mp-units 2024-09-15 19:30:23 -06:00
Mateusz Pusz
78efb77b96 style: empty leading line removed from quantity.h 2024-09-15 19:30:13 -06:00
Mateusz Pusz
618b097c42 refactor: value_cast<Rep, U> now reuses value_cast<U, Rep> 2024-09-15 19:29:40 -06:00
Mateusz Pusz
2e96871176 refactor: is_power_of_quantity_spec and is_power_of_dim variable templates converted to concepts 2024-09-14 19:41:43 -06:00
Yves Delley
9ca56f6911 avoid precision loss warning in magnitudes' root; fixes #611 2024-09-14 21:37:00 +02:00
Mateusz Pusz
0670fbdd9f feat: value_cast<Representation, Unit>() complementary conversion function added 2024-09-13 21:38:59 +02:00
Mateusz Pusz
3e31067ce4 refactor: has_common_type_v simplified 2024-09-10 18:48:11 +02:00
Mateusz Pusz
8103a4039f fix: std::format does not have to use Char* as iterators 2024-09-10 18:43:19 +02:00
Jonas Hoppe
329b17ec8c clang-format 2024-09-10 11:14:45 +02:00
Jonas Hoppe
5ecb6c295a [msvc][fix] add Todo comment for bug
https://developercommunity.visualstudio.com/t/Discrepancy-in-Behavior-of-operator-an/10732445
2024-09-10 11:01:15 +02:00
Jonas Hoppe
0532f41872 Merge branch 'master' into master-msvc-194-only-lib 2024-09-10 10:04:14 +02:00
Jonas Hoppe
f651438f29 [clang-format] 2024-09-10 09:58:05 +02:00