Commit Graph
3701 Commits
Author SHA1 Message Date
Mateusz Pusz 4eb63227e2 refactor: 💥 ascii -> portable, unicode -> utf8, 'A' -> 'P' 2024-10-10 00:02:08 +02:00
Mateusz Pusz cb424a79c0 fix: math functions constraints fixed 2024-10-09 18:28:44 +02:00
Mateusz Pusz f1590b0f04 refactor: magnitude::op==() now uses our own is_same_v 2024-10-09 17:28:04 +02:00
Mateusz Pusz 2b1e7edd69 refactor: derived_from_the_same_base_dimension no longer needed 2024-10-09 17:27:01 +02:00
Mateusz Pusz 70a18fec0c refactor: 💥 op==(U1, U2) now checks for the same type (old behavior available as equivalent(U1, U2)) + convertible now verifies associated quantity_spec as well 2024-10-09 17:26:13 +02:00
Mateusz Pusz e3ce507fd3 docs: initial version of ISQ part 5 added 2024-10-08 09:15:57 +02:00
Mateusz Pusz 01c5169600 docs: ISQ part 1 published 2024-10-07 08:42:38 +02:00
Mateusz Pusz dd55a52675 feat: alternative litre unit symbol L added to prevent ambiguities with 1 2024-10-06 08:53:04 +02:00
Mateusz Pusz 2249879d62 feat: litre text symbol changed from l to L to avoid ambiguity with 1 2024-10-06 08:32:16 +02:00
Mateusz Pusz 65860ad7d7 build: setting of some test_package CMake options enabled only for a cxx_modules build 2024-10-06 08:06:38 +02:00
Mateusz Pusz ee7caf494e docs: better_type_name description added in a comment 2024-10-06 08:05:10 +02:00
Mateusz Pusz cff9e25d3e feat: common_unit selection algorithm improved to make rev + rad return rad 2024-10-05 22:57:46 +02:00
Mateusz Pusz 21d07a4cf4 docs: "Symbols of scaled units" chapter added + minor updates to scaled and common units chapters 2024-10-05 18:11:18 +02:00
Mateusz Pusz 569f27af8b fix: common_unit handling fixed for some corner cases 2024-10-05 17:52:52 +02:00
Mateusz Pusz 07e4e795c1 refactor: magnitude interface cleanup 2024-10-04 17:22:15 +02:00
Mateusz Pusz f07e518ff0 test: unit tests for the inverse of mag_constant added 2024-10-04 14:59:39 +02:00
Mateusz Pusz fbe384a476 feat: TagType concept added 2024-10-04 14:55:59 +02:00
Mateusz Pusz 909d7d9065 docs: added TODO for radical powers of magnitude tests 2024-10-04 09:13:08 +02:00
Mateusz Pusz a95b2c770e fix: explicit cast added to less for magnitudes to fix clang-arm64 conversion error 2024-10-03 22:10:38 +02:00
Mateusz Pusz cc521ee723 fix: magnitude compilation fixed 2024-10-03 20:40:46 +02:00
Mateusz Pusz dba8b07eb5 feat: added support for printing powers of magnitude constants 2024-10-03 19:36:37 +02:00
Mateusz Pusz d783c3cda9 feat: magnitude text now obeys formatting parameters and knows how to print constants 2024-10-03 18:39:41 +02:00
Mateusz Pusz 5c1035a312 fix: extraneous space in unit symbol having only denominators removed 2024-10-03 18:34:37 +02:00
Mateusz Pusz 2c15f3c058 feat: tag types are now required to be empty 2024-10-03 16:51:01 +02:00
Mateusz Pusz 6f771e0ed7 refactor: shorten_T removed 2024-10-03 16:46:57 +02:00
Mateusz Pusz 87ed5c02d2 refactor: unit_symbol_formatting moved to a dedicated header file 2024-10-03 16:46:17 +02:00
Mateusz Pusz 1ee98471ac refactor: unit_symbol_impl simplified 2024-10-03 16:44:59 +02:00
Mateusz Pusz 51dc1d7469 fix: according to ISO 80000-16 % should always be prefixed with space 2024-10-03 11:54:40 +02:00
Mateusz Pusz 1a8a386460 feat: fractional exponents support added to mag_power 2024-10-03 10:25:23 +02:00
Mateusz Pusz f3e1ace5f6 refactor(tests): usf alias provided in unit_symbol_test.h 2024-10-03 09:22:49 +02:00
Mateusz Pusz defc69b346 refactor: 💥 mag_constant now takes a symbol and a value and the class deriving from it must be final 2024-10-02 19:05:45 +02:00
Mateusz Pusz 79cfd3ec9a fix: clang-16 compilation fixed 2024-10-02 18:01:34 +02:00
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 4a98817c15 feat(example): currency example now uses chrono::time_point and has better interfaces 2024-10-01 19:53:02 +02:00
Mateusz Pusz 74c55baebe docs: minor cleanup of quantity hierarchies 2024-10-01 19:52:06 +02:00
Mateusz Pusz 77aa13e54d docs: minor cleanup of part 1 and 3 of ISQ series 2024-10-01 19:51:15 +02:00
Mateusz Pusz 50bfb1a21c docs: ISQ part 4 added 2024-10-01 19:50:48 +02:00
Mateusz Pusz 1ff527b5e8 docs: ISQ parts 1-3 improved 2024-10-01 12:07:19 +02:00
Mateusz Pusz e7663fe9fd ci: MSVC enabled on CMake CI 2024-09-30 20:03:10 +02:00
Mateusz Pusz a9fc203ee5 fix: MSVC workaround applied to test_package 2024-09-30 19:46:21 +02:00
Mateusz Pusz 1039332750 style: pre-commit whitespaces cleanup in ISQ articles 2024-09-30 19:21:36 +02:00
Mateusz Pusz c9c22ba08a ci: commands of ci-conan fixed for MSVC 2024-09-30 19:19:19 +02:00
Mateusz Pusz 367b03358d docs: "MSVC compiler support" chapter added to the 2.3.0 announcement 2024-09-30 19:11:10 +02:00
Mateusz Pusz cc043360d5 ci: MSVC added to the CI 2024-09-30 19:07:37 +02:00
Mateusz Pusz 5f1c53dcd8 docs: typo fixed in the "iec80000 system renamed to iec" chapter of the 2.3.0 announcement 2024-09-30 18:57:42 +02:00