Commit Graph
530 Commits
Author SHA1 Message Date
Mateusz Pusz f18f3c24f8 feat: quantity_point CTAD for Rep and QuantityLike removed 2023-08-01 11:58:21 +02:00
Mateusz Pusz 613bbca620 fix: quantity_point now uses absolute() instead of relative() for comparisons 2023-08-01 11:57:20 +02:00
Mateusz Pusz 823fe26a13 feat: quantity_point binary operators are now constrained to prevent weakening of the origin 2023-08-01 11:55:39 +02:00
Mateusz Pusz 1e81069d53 feat: absolute_point_origin convertibility removed 2023-08-01 11:53:50 +02:00
Mateusz Pusz 5d73cd0730 feat: dimensionless quantities with a unit one are not special anymore 2023-07-10 16:53:49 +02:00
Mateusz Pusz 9e42e1faca feat: quantity_point can now be constructed faster from another one if they share the same point_origin 2023-07-07 09:36:08 +02:00
Mateusz Pusz dfaf293774 fix: quantity_point converting constructor fixed to account for different offsets of point origins cntd... 2023-06-30 17:35:32 +01:00
Mateusz Pusz 66a24e47c7 fix: quantity_point converting constructor fixed to account for different offsets of point origins 2023-06-30 17:34:47 +01:00
Mateusz Pusz d820cfe6cf feat: zero() static member function added to quantity_point 2023-06-30 17:28:01 +01:00
Mateusz Pusz b9802e5df1 fix: conversion between quantity points fixed 2023-06-30 17:27:10 +01:00
Mateusz Pusz 90c8cbce25 refactor: unit_can_be_prefixed trait refactored 2023-06-22 18:15:02 +02:00
Mateusz Pusz 6201109c60 refactor: TYPENAME and CONSTEVAL macros got MP_UNITS_ prefix 2023-06-21 18:07:55 +02:00
Mateusz Pusz ba1f58af76 refactor: All the macros refactored to have MP_UNITS_ prefix 2023-06-21 18:05:21 +02:00
Mateusz Pusz 3d20dfef91 refactor: unit_symbol_separator::dot renamed to half_high_dot 2023-06-18 10:28:51 +02:00
Mateusz Pusz faa4c203aa fix: treat_as_floating_point and Scalable fixed for the case where the type has both value_type and element_type 2023-06-17 06:44:20 +03:00
Mateusz Pusz 7774466c1c fix: clang-17 specific compilation fixes (partially contributed by @JohelEGP) 2023-06-16 14:54:22 +03:00
Mateusz Pusz 698b6ce338 refactor: sudo_cast if constexpr condition refactored 2023-06-15 17:39:33 +03:00
Mateusz Pusz fa8fc078df fix: forgot to add hacks header to ratio 2023-06-15 17:38:59 +03:00
Mateusz Pusz 34765a2ab1 refactor: a few ratio functions made constexpr for clang 2023-06-15 17:31:08 +03:00
Mateusz Pusz d380aa3800 refactor: clang has issues with CTAD for aggregates 2023-06-15 17:28:35 +03:00
Mateusz Pusz 6d488071fc refactor: clang still does not support C++17 feature related to template tempaltes with default compilation flags 2023-06-15 17:27:28 +03:00
Mateusz Pusz dcad3b6a56 refactor: alternative mag_pi implementation provided as a workaround for clang 2023-06-15 17:26:16 +03:00
Mateusz Pusz 5635f7d199 fix: QUANTITY_SPEC macro fixed 2023-06-15 17:01:52 +03:00
Mateusz Pusz 7d37e656cb chore: merge issues fixed 2023-06-14 21:15:27 +03:00
Mateusz Pusz e2bd12750b Merge commit 'ec04d9c03ddf12e46dca5348d4ca57b526e425f1' 2023-06-14 21:13:07 +03:00
Mateusz Pusz 3f88da4ebf feat: clone_reference_with added 2023-06-14 15:57:32 +03:00
Mateusz Pusz 6d10572922 refactor: concept cleanup 2023-06-14 09:14:43 +03:00
Mateusz Pusz 74ad0f6f68 fix: more constraints added to ReferenceOf to provide support for corner cases of dimensionless quantity tree 2023-06-13 17:34:37 +03:00
Mateusz Pusz 8ed82dfe96 refactor: DerivedFromQuantityKindSpecOf introduced to remove code duplications 2023-06-13 17:32:52 +03:00
Mateusz Pusz 9ab8136c98 refactor: has_unit_symbol() added 2023-06-13 14:52:14 +03:00
Mateusz Pusz 4330cabd59 feat: pow, sqrt, and cbrt support added for reference 2023-06-13 09:14:53 +03:00
Mateusz Pusz de4fefde3f fix: pow() fixed for quantity specs and units 2023-06-13 09:14:01 +03:00
Mateusz Pusz 211bd61895 refactor: sudo_cast improved to benefit from treat_as_floating_point 2023-06-13 09:12:04 +03:00
Mateusz Pusz 7b22155bf3 feat: linear algebra library usage re-enabled 2023-06-12 11:47:30 +03:00
Mateusz Pusz 272a8d8b5c refactor: QuantityConvertibleTo checks reordered to limit type truncation on conversion warnings 2023-06-12 11:39:18 +03:00
Mateusz Pusz 30b0a0c5df fix: RepSafeConstructibleFrom now works correctly with Arg being rvalue reference 2023-06-12 11:38:36 +03:00
Mateusz Pusz bb158a69e9 refactor: type_traits usage cleanup 2023-06-12 11:37:39 +03:00
Mateusz Pusz 4092700cf9 refactor: casts cleanup and improved 2023-06-12 11:34:41 +03:00
Mateusz Pusz c22490290f fix: forgot to commit _quantity_spec_ member added to kind_of 2023-06-08 22:02:34 +02:00
Mateusz Pusz f9e1404e02 style: formatting updated to make pre-commit happy 2023-06-08 22:01:40 +02:00
Mateusz Pusz f853f1f4ef fix: magnitudes division fixed when units are divided 2023-06-08 19:08:41 +02:00
Mateusz Pusz 6f0f6b2213 feat: make_quantity() and op*(Representation, Unit are now correctly using quantity constructor constraints 2023-06-08 17:41:48 +02:00
Mateusz Pusz 05ed7dae88 feat: RepSafeConstructibleFrom now accounts for magnitude representation type 2023-06-08 17:40:01 +02:00
Mateusz Pusz 9d41fb33ef fix: RepSafeConstructibleFrom argument value category fixed 2023-06-08 17:34:19 +02:00
Mateusz Pusz 7a730fde58 refactor: constant_unit abstraction removed and replaced with regular named_unit 2023-06-05 19:36:22 +02:00
Mateusz Pusz 6364fcdf7e fix: IntermediateDerivedQuantitySpec now also accounts for kind_of 2023-06-05 19:26:53 +02:00
Mateusz Pusz c2e91d41c4 fix: commutativity of a common_unit() fixed 2023-06-05 11:09:02 +02:00
Mateusz Pusz 621faae8bc feat: sqrt() and cbrt() added for dimension, quantity_spec, and unit 2023-06-01 08:49:08 +02:00
Mateusz Pusz 14258c97fd refactor: magnitude::pow() now takes two ints rather than a ratio (consistent with the rest of library) 2023-06-01 08:47:55 +02:00
Mateusz Pusz 03b58ee073 refactor: square and cubic are now functions (not variable templates) 2023-06-01 08:45:41 +02:00