Commit Graph
203 Commits
Author SHA1 Message Date
Chip Hogg ea83af8aa9 Rename as_magnitude<...>() to mag<...>()
This is easier to write and to read.
2022-07-29 01:46:06 +00:00
Chip Hogg 7fd6913b73 Replace exp with 0 everywhere, and remove it
This lets us remove a ton of special-casing throughout the codebase, and
just generally makes things a lot simpler.

We also remove the ability to take rational powers of `ratio`, including
`sqrt` and `cbrt` helpers, because these are intrinsically ill-defined.

Fixes #369.
2022-07-20 00:52:37 +00:00
Chip Hogg 6a9dcb30de Migrate explicit-exp inputs 2022-07-20 00:52:36 +00:00
Chip Hogg ef9e6522ca Merge branch 'master' into chiphogg/switch-to-mag 2022-06-15 20:50:30 +00:00
Mateusz Pusz a1637ebac6 feat(example): si_constants example added 2022-05-22 19:51:35 +02:00
Mateusz Pusz 0acfc8aa86 refactor(example): are_derivatives renamed to are_time_derivatives in kalman examples 2022-05-22 19:49:55 +02:00
Chip Hogg 5fb468697b Merge branch 'master' into chiphogg/switch-to-mag 2022-05-12 16:12:01 +00:00
Mateusz Pusz 0a11ebacb7 chore(example): unused example/literals/custom_systems.cpp removed 2022-05-11 20:21:44 +02:00
Mateusz Pusz fddde26157 fix(example): clang-14 compilation fixed 2022-05-11 20:20:55 +02:00
Mateusz Pusz 32b36fb670 refactor: 💥 ! PrefixFamily support removed
It doesn't have much sense to restrict prefixes usage for most units and in many places we were wrong to do so already.
2022-05-11 11:59:33 +02:00
Mateusz Pusz 0b8e5c0dfe fix(example): foot_pound_second example now correctly uses international::knot which is typical for Marine industry
Resolves #357
2022-05-09 14:03:14 +02:00
Mateusz Pusz 954dc5d53e fix: missing typename added for clang-12 2022-04-22 13:27:11 +02:00
Mateusz Pusz 967c1c9ca9 fix: ranged_representation fixed for clang-12 2022-04-22 13:26:31 +02:00
Mateusz Pusz c598201d11 fix: ranged_representation refactored to work with older compilers 2022-04-22 13:07:01 +02:00
Mateusz Pusz bded48987d refactor(example): glide_computer now use dimensionless quantities with ranged_representation as rep 2022-04-21 21:25:54 +02:00
Mateusz Pusz 11521a5a96 feat(example): validated_type and ranged_representation example types added 2022-04-21 21:23:45 +02:00
Mateusz Pusz 999ff52d70 refactor: knot unit helper renamed to kn in FPS
Relates to #357
2022-04-19 18:48:46 +02:00
Chip Hogg 78bcb3b019 Remove troublesome ::ratio members
For some reason, MSVC seems to want to instantiate these, even though
nobody ever asks for them (as evidenced by the fact that the builds
passed on other architectures).
2022-04-12 00:35:17 +00:00
Chip Hogg d19b2803ce Migrate units from ratio to Magnitude
This commit is huge, but hopefully the cognitive load is not too bad.
The bulk of this commit is just some fairly mechanical updates from
`ratio` to `Magnitude`.  Other things to call out:

- `UnitRatio` goes away.  We don't need this concept, because Magnitude
  can't even _represent_ anything that doesn't satisfy it.

- I commented out some formatting test cases where the precise
  expression changes, but the number is completely equivalent.  We will
  need to decide how we want to handle Magnitude formatting as a
  separate, follow-on task.  But at least Magnitude gives us all the
  tools we'll need to do so!
2022-04-11 15:16:16 +00:00
Mateusz Pusz b221dace3f style: clang-format applied to the remaining files 2022-04-02 21:36:42 +02:00
Markus Hofbauer cf7a7ed17a check: run pre-commit on all files 2022-04-02 18:58:23 +02:00
Markus Hofbauer 4c127797da check: run pre-commit on all files 2022-03-18 16:12:21 +01:00
Mateusz Pusz 5668257fe1 build: Conan geerated target renamed to wg21_linear_algebra 2022-02-28 19:23:34 +01:00
Mateusz Pusz 0ce18dc3c7 feat: std::format usage enabled for VS2022 2021-11-15 16:28:26 +01:00
Mateusz Pusz 331024a199 refactor: simplified formatting of latitude and longitude 2021-11-11 07:45:46 +01:00
Mateusz Pusz 3c2b705ded Revert "refactor: got rid of CRTP for latitude and longitude"
This reverts commit 65fed78c98.
2021-11-10 19:45:39 +01:00
Mateusz Pusz 65fed78c98 refactor: got rid of CRTP for latitude and longitude 2021-11-10 19:44:22 +01:00
Mateusz Pusz c950a513a4 refactor: latitude and longitude simplified 2021-11-10 19:02:08 +01:00
Mateusz Pusz 9f95799288 refactor: got rid of FMT_RUNTIME() as it is not the part of C++20 2021-11-08 18:37:37 +01:00
Mateusz Pusz f9fb6cc8b3 build: projectPrefix usage added 2021-11-05 23:35:30 +01:00
Mateusz Pusz 2333c4b3ea build: CMake targets generated by Conan updated 2021-11-04 12:09:54 +01:00
Mateusz Pusz 7d370eb496 refactor: forward_range replaced with input_range 2021-10-15 18:21:26 +02:00
Mateusz Pusz ee70c48b13 build: linear_algebra examples re-enabled on gcc11 2021-10-15 16:14:00 +02:00
Mateusz Pusz ed1b2d2647 fix: Some MSVC-specific special cases removed 2021-09-23 19:16:44 +02:00
Mateusz Pusz b1bd4cab2d feat: std::format support for compliant compilers added 2021-09-20 15:01:58 +02:00
Mateusz Pusz 0a4f99259d Merge branch 'master' of https://github.com/mpusz/units 2021-09-17 13:56:30 +02:00
Mateusz Pusz daa00c2f08 build: linear_algebra examples disabled for gcc-11.1.0 due to ICE 2021-09-17 13:56:27 +02:00
Mateusz Pusz 3a997e5314 fix: explicit fmt usage added 2021-09-17 09:48:33 +02:00
Mateusz Pusz 8740857a47 build: fmt updated to 8.0.1 2021-09-16 20:24:27 +02:00
Mateusz Pusz 1ebf72e041 build: linear algebra switched to wg21-linear_algebra/0.7.2 2021-09-09 09:13:10 +02:00
Mateusz Pusz e6cfd4e69b build: clang-13 support added 2021-08-10 13:54:39 +02:00
Johel Ernesto Guerrero Peña 80eefec97c fix: add quantity_point::origin, like std::chrono::time_point::clock 2021-06-29 20:44:27 +02:00
Mateusz Pusz 7ead50acfc refactor: derived_kind template parameters reordered to be compatible with a derived_unit
Resolves #229
2021-05-10 16:45:38 +02:00
Mateusz Pusz 2c8c6c2e98 refactor: quantity cration helpers are not opt-out rather than opt-in
Resolves #277
2021-05-09 15:52:20 +02:00
Mateusz Pusz ab66455fb1 fix: haversine formula fixed
Resolves #276
2021-05-02 13:03:14 +02:00
Mateusz Pusz 7512e29137 fix: Windows build fixed 2021-04-16 14:55:42 +02:00
Mateusz Pusz 554323d3a6 refactor: conversions part of the custom_systems refactored to be more explicit 2021-04-16 14:41:05 +02:00
Mateusz Pusz 340e62f833 refactor: IWYU 2021-04-16 13:59:41 +02:00
Mateusz Pusz 3c56375e85 refactor: Example updated to benefit from USCS system 2021-04-16 13:01:12 +02:00
Mateusz Pusz 46e1e5e932 refactor: US system renamed to USCS 2021-04-16 12:40:52 +02:00