Commit Graph
113 Commits
Author SHA1 Message Date
Mateusz Pusz 2fddb494d3 _t postfix removed from the interface (resolves #9) 2019-10-04 16:22:49 +02:00
Mateusz Pusz 7c4e5d086a Merge pull request #17 from jansende/patch-2
Optimized floating point unit conversions
2019-10-01 20:08:01 +02:00
Mateusz Pusz 12200f6f40 operator% constrained to integral types only (resolves #16) 2019-10-01 16:29:42 +02:00
Jan Sende a11f5a92b6 Optimized floating point unit conversions
- Divisions are now made at compile time.
- Only runtime multiplications are left.
2019-09-30 23:38:33 +02:00
Mateusz Pusz f373adb42f Not needed static_assert removed from quantity class template 2019-09-30 09:07:15 +02:00
Mateusz Pusz f9d6b53b72 [[nodiscard]] added to quantity_cast and DESIGN.md update with the new quantity_cast functionality 2019-09-30 09:05:50 +02:00
Mateusz Pusz 3b07c51f50 Merge pull request #15 from jansende/patch-1
Made quantity_cast more versatile
2019-09-30 08:55:39 +02:00
Mateusz Pusz 73b5c7c4ac {+a} -> T added to a Number concept 2019-09-30 08:51:45 +02:00
Jan Sende dc85dd84b9 Made quantity_cast more versatile
- One can now change the unit type without changing the representation type.
- One can now change the representation type without changing the unit type.
- Had to implement std::common_type<my_value, my_value> to still compile
  integration tests. (It implicitly converted to another representation
  before.)
2019-09-30 01:45:38 +02:00
Mateusz Pusz 952b19c2ed bool removed from concepts definitions as gcc-9.1 supports this syntax already 2019-09-28 19:10:06 +02:00
Mateusz Pusz 4b145ea4cf Den != 0 added as a constrain on ratio type 2019-09-27 23:45:45 +02:00
Mateusz Pusz 1a23d5b69e Invalid todo comment and depdency on std::ratio removed 2019-09-27 09:41:39 +02:00
Mateusz Pusz 00ed8ad83a Missing CMake change added to fix the compilation 2019-09-26 23:08:33 +02:00
Mateusz Pusz 2e1ce83024 Downcasting facility refactored so the user does not have to write the boilerplate code anymore 2019-09-26 22:30:57 +02:00
Mateusz Pusz ad69f338b8 pow<N>() fixed to work with the integral representations 2019-09-24 16:59:45 +02:00
Mateusz Pusz 0cffcf7849 downcasting_traits renamed to downcast_traits
- downcasting_traits -> downcast_traits
- downcasting_traits_t -> downcast_traits_t
- downcast_from -> downcast_base_t
- downcast_to removed
2019-09-20 18:36:14 +02:00
Mateusz Pusz c3d7359ca3 units removed from a std::experimental namespace 2019-09-18 21:55:16 -06:00
Mateusz Pusz 6390eba786 Dimensions comparison improved 2019-09-18 21:24:40 -06:00
Mateusz Pusz 58106618ac ratio_pow and ratio_sqrt fixed + unit tests added 2019-09-18 18:34:54 -06:00
Mateusz Pusz 2d74b72893 pow() and sqrt() for quantities support added 2019-09-18 17:07:35 -06:00
Mateusz Pusz 021df4a46f dimension_sqrt and dimension_pow support added 2019-09-18 15:32:22 -06:00
Mateusz Pusz f5cc0a2f57 gcc compiler flags fixed 2019-09-18 11:04:51 -06:00
Mateusz Pusz de15e21ee5 Version updated to 0.4.0 2019-09-18 10:31:58 -06:00
Mateusz Pusz 929a812ec4 cmcstl2 dependency changed to range-v3 0.9.1 2019-09-18 10:29:30 -06:00
Mateusz Pusz 3fcb7c9e91 dim_invert and dim_consolidate cleanup 2019-09-18 06:37:30 -06:00
Mateusz Pusz 32a65a7405 Support for derived dimensions in exp added 2019-09-18 06:36:52 -06:00
Mateusz Pusz 90a7dbe3fa quantity_cast<U, Rep> support added 2019-09-16 00:21:58 -06:00
Mateusz Pusz 9953acb2ab Missing concept added to type_list 2019-09-15 17:33:46 -06:00
Mateusz Pusz 022783df74 Extra typename usage removed from ratio.h 2019-09-13 08:52:22 +02:00
Mateusz Pusz bebaa5482c QuantityOf concept added 2019-09-10 22:33:54 +02:00
Mateusz Pusz bce17a8476 Fractional dimension exponents support added 2019-09-10 21:20:32 +02:00
Mateusz Pusz 8587d5350d Expects changed to not do anything in a Release build 2019-09-10 20:23:10 +02:00
Mateusz Pusz 497a13da1a Dependency on gsl-lite removed as it causes issues with compiler-explorer 2019-09-10 20:07:48 +02:00
Mateusz Pusz 70a90b4ae0 config.h support removed as it causes issues with compiler-explorer 2019-09-10 18:59:23 +02:00
Mateusz Pusz dfba6e8f85 Unit check for positive ratio improved 2019-09-09 23:02:07 +02:00
Mateusz Pusz 3bcd80681e base_dimension is provided as a const& to the exp type 2019-09-06 10:16:19 +02:00
Mateusz Pusz 33b6fa9f3f Concepts removed from unit related utilities to increase compile-times 2019-08-08 22:31:22 +02:00
Mateusz Pusz eb5ff0bf99 cmcstl2 library updated to 2019.08.07 2019-08-08 13:49:51 +02:00
Mateusz Pusz 1d94eb93e8 dimension_ prefix removed from names of derived dimensions 2019-08-06 19:56:09 +02:00
Mateusz Pusz 7d70e6b1ce Predefined dimensions moved to a dedicated directory 2019-08-06 10:44:25 +02:00
Mateusz Pusz 9452cf5f3c Concepts usage removed from deduced template arguments and partial specializations 2019-08-06 10:35:43 +02:00
Mateusz Pusz 9c979fc03a Missing op*() added 2019-08-05 18:22:53 +02:00
Mateusz Pusz b0c4a6c2a8 meter renamed to metre 2019-08-02 17:04:55 +02:00
Mateusz Pusz ce53df71fc Added a few more derived dimensions 2019-07-24 16:55:21 +02:00
Mateusz Pusz 41fdfeeea9 Version updated to 0.3.0 2019-07-24 13:27:46 +02:00
Mateusz Pusz 9e74613a4a Leading underscore prefix removed from UDLs 2019-07-24 12:20:06 +02:00
Mateusz Pusz 98203afa29 units moved to std::experimental namespace 2019-07-24 11:58:15 +02:00
Mateusz Pusz eeb4c9c951 Dimension template parameter removed from quantity 2019-07-19 13:49:49 +02:00
Mateusz Pusz 03a22cba2a upcasting renamed to downcasting 2019-07-18 23:24:24 +02:00
Mateusz Pusz 7cbeb35e17 Double sorting of exponents removed 2019-07-18 10:01:42 +02:00