Mateusz Pusz
af827ca50f
refactor: small math functions refactoring to make clang happy
2023-08-26 19:27:48 +02:00
Mateusz Pusz
f29c57d367
style: formatting to make pre-commit happy
2023-08-25 23:05:36 +02:00
Mateusz Pusz
f7bd67bf09
fix: invalid preprocessor conditions fixed
2023-08-25 22:48:27 +02:00
Mateusz Pusz
27ec678314
refactor: workarounds to make gcc-11 compile
2023-08-25 22:47:32 +02:00
Mateusz Pusz
c53b692ac9
refactor: clang-17 has a proper support for consteval
2023-08-25 21:17:48 +02:00
Mateusz Pusz
1cb20145c8
refactor: workaroud on ratio comparison to enable clang-16 compilation
2023-08-25 21:16:16 +02:00
Mateusz Pusz
a2376b9b53
refactor: workaround to enable clang-16 compilation
2023-08-25 21:15:00 +02:00
Mateusz Pusz
974110646a
refactor: repeated forward declaration of make_quantity removed
2023-08-25 20:42:48 +02:00
Mateusz Pusz
6f1832ceb3
feat: BaseQuantitySpec concept removed as it had no use
2023-08-25 20:27:38 +02:00
Mateusz Pusz
ab3f75d3e0
refactor: make_quantity_point declaration moved to a concept header file
2023-08-25 09:32:57 +02:00
Mateusz Pusz
e8fada662c
fix: clang compilation changes for quantity_cast
2023-08-24 20:00:02 +02:00
Mateusz Pusz
85b6dd0e38
fix: not enough changes were commited in one of the previous commits
2023-08-24 19:32:14 +02:00
Mateusz Pusz
1bc6fdece9
fix: clang compilation workarounds added for magnitudes
2023-08-24 19:21:17 +02:00
Mateusz Pusz
624b7c7404
fix: some fixes revealed during clang compilation
2023-08-24 19:14:23 +02:00
Mateusz Pusz
14c1f34664
refactor: QuantityLike now requires value to exactly return rep
2023-08-23 20:00:32 +02:00
Mateusz Pusz
a9204e2473
refactor: number() and number_in() renamed to value() and value_in()
...
Resolves #423
2023-08-23 17:15:32 +02:00
Mateusz Pusz
ae92b49775
refactor: op[U] for quantity and quantity_point replaced with .in(U)
...
Resolves #469
2023-08-23 16:46:15 +02:00
Mateusz Pusz
5af82e3162
refactor: point_from renamed to point_for
2023-08-23 15:42:55 +02:00
Mateusz Pusz
e49e6c40ae
feat: absolute() member function removed from quantity_point
2023-08-23 14:52:09 +02:00
Mateusz Pusz
fb9f288c56
feat: quantity_point construction from quantity made private + make_quantity_point added
2023-08-23 12:49:14 +02:00
Mateusz Pusz
ed279c43ab
feat: quantity_point CTAD from Quantity removed
2023-08-23 11:53:49 +02:00
Mateusz Pusz
7594048850
fix: relative_point_origin::quantity_spec setting fixed
2023-08-23 11:42:43 +02:00
Mateusz Pusz
71981172c3
feat: quantity_point does not take a default origin anymore + common_qs logic removed from the binary operators
2023-08-23 10:41:37 +02:00
Mateusz Pusz
d8b687d6a9
feat: absolute_zero and ice_point point origins added to SI
2023-08-18 18:51:58 +02:00
Mateusz Pusz
07ce64d6e7
refactor: relative() renamed to quantity_from_origin()
...
Resolves #479
2023-08-18 18:49:04 +02:00
Mateusz Pusz
752408449f
feat: PointOrigin arithmetics support added
2023-08-18 18:35:41 +02:00
Mateusz Pusz
110986ee1f
feat: quantity_cast<kind_of_qs>(associated_unit) now returns the bare unit as a reference
2023-08-18 11:11:29 +02:00
Mateusz Pusz
ef39b8c4c7
feat: kind_of_qs[unit] now returns a bare unit as a reference
2023-08-18 11:01:40 +02:00
Mateusz Pusz
a3cf3f4087
feat: DimensionOf and QuantitySpecOf added and reused in ReferenceOf concept
2023-08-18 10:58:25 +02:00
Mateusz Pusz
af26c48795
feat: now "7 days" will be created for std::chrono::weeks instead of a quantity in seconds
2023-08-15 11:22:23 +02:00
Mateusz Pusz
059c4f4eea
fix: quantity construction from std::chrono types fixed
2023-08-15 11:17:52 +02:00
Mateusz Pusz
eb28aa8f8c
fix: point_from() now returns a point with a proper representation type
2023-08-15 11:15:20 +02:00
Mateusz Pusz
0c69747f15
refactor: quantity_point compile-time optimizations
2023-08-03 11:32:49 +02:00
Mateusz Pusz
3628e99aaa
feat: CTAD for quantity_point can now deduce point_origin
2023-08-03 11:31:58 +02:00
Mateusz Pusz
dd9fd761a3
refactor: now we have only one quantity_point converting constructor
2023-08-02 11:21:09 +02:00
Mateusz Pusz
ccdf5d319a
feat: point_from extended with the case of the same origin
2023-08-02 11:20:32 +02:00
Mateusz Pusz
c289bbcfdb
refactor: parent_origin renamed to quantity_point in relative_point_origin
2023-08-02 08:55:29 +02:00
Mateusz Pusz
1328ae4245
feat: point_from added to quantity_point
2023-08-01 22:06:15 +02:00
Mateusz Pusz
0292048252
refactor: quantity_point converting constructor simplified
2023-08-01 22:04:46 +02:00
Mateusz Pusz
4c2e288017
feat: explicit this interfaces added for getters in quantity and quantity_point
2023-08-01 17:26:00 +02:00
Mateusz Pusz
5015d7c3e3
fix: explicit this interfaces fixed for quantity_spec
2023-08-01 17:25:15 +02:00
Mateusz Pusz
b19bf0761c
feat: relative_point_origin support added
...
Relates to #414
2023-08-01 17:24:01 +02:00
Mateusz Pusz
c12bf20703
feat: lvalue reference overload of relative() added
...
Relates to #476
2023-08-01 15:53:45 +02:00
Mateusz Pusz
c12b3b1ccc
feat: lvalue reference overload of number() added
...
Resolves #476
2023-08-01 15:51:49 +02:00
Mateusz Pusz
acfbd07bb7
docs: unit_symbol_solidus comments changed to use unicode
2023-08-01 12:40:28 +02:00
Mateusz Pusz
ea6325a5eb
refactor: some parameterized quantity specs renamed
...
Relates to #475
2023-08-01 12:38:29 +02:00
Mateusz Pusz
092e1569a7
feat: heat is now a quantity of energy kind
...
ISO 8000-1 says: "The quantities heat, kinetic energy, and potential energy are generally considered to be quantities of the same kind, namely, of the kind of quantity called energy."
2023-08-01 12:36:27 +02:00
Mateusz Pusz
2ddbb365f3
feat: QuantityPointOf concept now has a special case for absolute_point_origin
2023-08-01 11:59:08 +02:00
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