Commit Graph
399 Commits
Author SHA1 Message Date
Mateusz Pusz 1f2e57a575 refactor: interconvertible renamed to convertible_to 2023-02-08 21:14:17 -08:00
Mateusz Pusz c21bde85a3 refactor: same_canonical_reference_unit renamed to have_same_canonical_reference_unit 2023-02-08 21:11:57 -08:00
Mateusz Pusz faffbefad2 refactor: get_dimension_for() no longer needed 2023-02-08 21:09:20 -08:00
Mateusz Pusz 4484148735 fix: ambiguity on common_reference resolved 2023-02-08 21:06:14 -08:00
Mateusz Pusz fbc34c8b98 refactor: get_associated_quantity.h moved to a dedicated header file 2023-02-08 21:05:31 -08:00
Mateusz Pusz 290f406746 fix: quantity creation in its operator/ fixed 2023-02-08 21:00:52 -08:00
Mateusz Pusz 68617f68b0 feat: quantity.h now exports quantity_cast and value_cast to simplify library usage 2023-02-08 20:59:08 -08:00
Mateusz Pusz 8a0a61b589 refactor: DerivedQuantitySpec implementation simplified 2023-02-07 22:28:14 -08:00
Mateusz Pusz 8de74eb6f7 feat: call operator of reference does not produce a quantity anymore 2023-02-06 22:39:23 -08:00
Mateusz Pusz ebccabc94c refactor: DerivedDimension definition simplified 2023-02-06 22:34:59 -08:00
Mateusz Pusz 764e211f9a fix: perfect forwarding of a number in the reference multiply operator fixed 2023-02-03 16:52:17 +01:00
Mateusz Pusz 0b053933bd feat: core.h header added 2023-02-03 16:51:26 +01:00
Mateusz Pusz cd0ee9276b feat: quantity_cast and multiplying by reference now use perfect forwarding of a number 2023-02-03 15:22:54 +01:00
Mateusz Pusz 7dd5580afb fix: value_cast compilation fixed 2023-02-03 15:19:25 +01:00
Mateusz Pusz b4f47c3fef feat: value_cast support added
Resolves #239 and #120
2023-02-03 11:08:13 +01:00
Mateusz Pusz cf3408a3c8 refactor: implementation cleanup + support for units as references started 2023-02-02 14:56:29 +01:00
Mateusz Pusz 1b2d77af41 feat: quantities of the same kind can now be added, subtracted, or compared to each other 2023-01-28 11:00:50 +01:00
Mateusz Pusz 1d83b7a99c fix: incorrect function trailing ; removed 2023-01-04 15:34:10 +01:00
Mateusz Pusz da64f17895 feat: quantity::number_in(Unit auto) added + removed non-const lvalue overload of number()
Resolves #412
2023-01-03 17:44:44 +01:00
Mateusz Pusz 2cf736a1e6 feat: preventing possible future units crash when using namespace std;
Resolves #317
2022-12-29 20:18:48 +01:00
Mateusz Pusz 97da55edfa refactor: the rest of the systems refactored for V2 2022-12-29 18:59:10 +01:00
Mateusz Pusz 210f401416 refactor: units ordering do need type_name (it also caused worse ordering on text output) 2022-12-27 10:08:59 +01:00
Mateusz Pusz 2a3e1f6035 refactor: angular system created 2022-12-25 17:32:29 +01:00
Mateusz Pusz daf6d2fb7a refactor: downcasting-specific build options removed 2022-12-25 17:30:08 +01:00
Mateusz Pusz 1cec3d4867 refactor: _chrono.h_, _math.h_, and _random.h_ move to utlitity CMake module 2022-12-25 17:20:44 +01:00
Mateusz Pusz 07687f9ef6 refactor: _generic/dimensionless.h_ removed (units added to _unit.h_) 2022-12-25 17:14:54 +01:00
Mateusz Pusz 770b9ab6ee refactor: basic_concepts removed 2022-12-23 19:21:35 +01:00
Mateusz Pusz b9f2b7fe9d refactor: std::chrono support refactored for V2 2022-12-23 19:21:01 +01:00
Mateusz Pusz a45088b859 refactor: quantity_point refactored for V2 2022-12-23 19:20:34 +01:00
Mateusz Pusz 4efbf81814 docs: another small cleanup of quantity 2022-12-23 19:16:23 +01:00
Mateusz Pusz 9ad2cd5986 fix: QUANTITY_SPEC macros now use units:: namespace 2022-12-23 18:04:40 +01:00
Mateusz Pusz dd8fb22e6e feat: quantity is now a structural type
Resolves #411
2022-12-23 18:03:15 +01:00
Mateusz Pusz e2a2076c8d style: quantity header cleanup 2022-12-23 18:01:51 +01:00
Mateusz Pusz c056f4535c refactor: quantity_like types refactored 2022-12-23 17:58:57 +01:00
Mateusz Pusz a62c388d05 refactor: make_quantity helper not needed with the new syntax 2022-12-23 16:29:39 +01:00
Mateusz Pusz 0fc05850c8 refactor: trigonometric functions refactored for isq::angular_measure 2022-12-23 16:27:12 +01:00
Mateusz Pusz 62c3e5f2b6 fix: hypot implementation fixed 2022-12-23 13:44:40 +01:00
Mateusz Pusz 0caf998df1 refactor: reference::operator() return type constraints improved 2022-12-22 21:28:49 +01:00
Mateusz Pusz e61bfafd29 fix: consteval replaced with constexpr for quantity_spec::operator() 2022-12-22 21:28:03 +01:00
Mateusz Pusz 57d655062c refactor: quantity_spec::operator[] return type constraints improved 2022-12-22 21:26:51 +01:00
Mateusz Pusz 0a1ee606f3 feat: new quantity creation syntax support added 2022-12-22 17:50:41 +01:00
Mateusz Pusz be58a6e03a refactor: quantity_spec::operator[] return type constrained with Reference concept 2022-12-22 16:48:28 +01:00
Mateusz Pusz a32eb712da refactor: quantity_spec::operator[] made consteval 2022-12-22 15:58:37 +01:00
Mateusz Pusz 1ff048a70e refactor: unused reference operator removed 2022-12-22 15:56:14 +01:00
Mateusz Pusz 915ca82a0b refactor: __cpp_explicit_this_parameter implementation of number() added 2022-12-20 17:23:29 +01:00
Mateusz Pusz c51f6a9d29 refactor: RepresentationOf concept usage added + quantity concepts cleanup 2022-12-20 17:22:51 +01:00
Mateusz Pusz 979a00e704 fix: get_canonical_unit() fixed for powers of derived quantities 2022-12-19 20:35:22 +01:00
Mateusz Pusz 7a26125e16 refactor: public headers cleanup
Public headers should be only the ones that a user may have a need to actually include in his/her code.
2022-12-19 14:55:54 +01:00
Mateusz Pusz f1f1009c3f feat: is_scalar, is_vector, and is_tensor customization points added 2022-12-19 13:39:21 +01:00
Mateusz Pusz a96c34c17a fix: exp() implementation fixed 2022-12-19 12:49:15 +01:00