38 Commits

Author SHA1 Message Date
b870b85c25 feat: import std; support added
Resolves #595
2024-07-16 17:36:00 +02:00
e90cffcbda refactor: text formatting library header files are no longer included in compat_macros.h 2024-06-10 22:04:41 +02:00
ec287664ee refactor: some TODO comments resolved 2024-05-31 21:07:42 +02:00
75f719add7 refactor: code refactored to comply with clang-tidy 2024-05-08 11:12:38 +02:00
f770057052 refactor: IWYU updates 2024-04-25 19:33:03 +02:00
8ea346be1c refactor: 💥 header files with the entire system definitions moved up in the directory tree 2024-04-25 16:34:11 +02:00
4ee7fb3375 style: formatting fixed to make pre-commit happy 2024-04-18 22:41:57 +01:00
fa04e93687 feat: New formatting specification implemented 2024-04-18 22:29:09 +01:00
a9deec9d59 refactor: example applications refactored to a new formatting syntax 2024-01-23 21:49:17 +01:00
fb8552b1d9 refactor: core-fmt and core-ostream modules merged with core 2024-01-06 08:51:01 +01:00
0eaf6e2e56 refactor: modules support redesigned 2024-01-06 08:51:01 +01:00
7cb2099af5 feat: add module mp_units 2024-01-06 08:51:00 +01:00
7f0e7f8ca8 refactor: 💥 SI-related trigonometric functions moved to the si subnamespace 2023-12-26 09:31:11 +01:00
b2423bfded feat: quantities can now be multiplied and divided by units 2023-09-29 21:40:24 -06:00
a6284aa293 refactor: some value_cast<U>(q) replaced with q.force_in(U) 2023-09-13 10:43:08 +02:00
9f1a42bc7f refactor: glide_computer renamed to glide_computer_lib 2023-08-24 19:19:55 +02:00
fb9f288c56 feat: quantity_point construction from quantity made private + make_quantity_point added 2023-08-23 12:49:14 +02:00
ba1f58af76 refactor: All the macros refactored to have MP_UNITS_ prefix 2023-06-21 18:05:21 +02:00
6627b0a491 refactor: glide_computer and storage_tank examples renamed 2023-06-02 13:52:00 +02:00
b982921d27 refactor: References are now guarded UNITS_REFERENCES with (ON by default) + examples duplicated to subdirectories
Now References can be disabled to meassure a compile time impact. Also the same examples are now provided in two subdirectories to be able to easily compare the pros and cons of every quantity construction technique.
2021-04-06 15:57:28 +02:00
37cfc53d1d refactor: IWYU applied to the source files
`alternative_namespaces` examples left out as I consider them a subject for removal in the nearest future.
2021-03-30 13:21:05 +02:00
069712b222 fix: Visual Studio caught up with terse form of constraints 2021-03-12 23:06:11 +01:00
cdba0cdbc4 refactor: glide_computer refactored and extended with geographical coordinates 2021-02-26 14:10:36 +01:00
017183653d feat: full-on dimensional analysis between related quantity kinds 2021-02-21 00:17:03 +01:00
6bf09aa646 feat: quantity_kind and quantity_point_kind 2021-02-15 19:31:08 +01:00
cfc90f4aac refactor: 💥 basic_concepts, quantity and quantity_cast refactored
BREAKING CHANGE:  ScalableNumber renamed to QuantityValue

Resolves #107
2020-10-06 18:17:52 +02:00
6e510b3a2a refactor: modules-like behavior for systems removed to improve broken compile-time
Reffers to #32
2020-09-13 00:11:02 +02:00
2a56438f1c refactor: file tree with systems defninitions refactored to limit ODR issues
Relates to #32 as with this commit we created something like modules for derived quantities
2020-09-11 18:11:25 +02:00
79558a6d72 refactor: systems defined in terms of SI moved under si namespace 2020-09-10 17:14:33 +02:00
9527b39005 refactor: 💥 q_* UDL renamed to _q_*
We had some fun exploring the STD UDLs for potential collisions,
we have learnt our lesson and know how to proceed.
Now is high time to start behaving and obeying C++ rules.
2020-09-09 19:20:35 +02:00
9a49df7222 refactor: 💥 Scalar concept renamed to ScalableNumber
Resolves #114
2020-09-08 21:17:09 +02:00
4bb51586dc refactor: got rid of gcc-9 backlog
BREAKING CHANGE: gcc-9.3 no longer supported
2020-09-08 13:09:34 +02:00
563b358d5e feat!: 💥 dimensionless quantities refactored
Dimensionless quantities are now represented by quantity types rather
than by plain representation types. Only dimensionless quantities with
`unitless` unit are implicitly convertible from representation types.

`units::exp()` now is a function doing std::exp() on a representation
type (previous `units::exp` class template was renamed to
`units::exponent`).

BREAKING_CHANGE: gcc-9.3 support removed
BREAKING_CHANGE: `exp` and `Exp` renamed to `exponent` and `Exponent`
Resolves #27
Resolves #42
2020-09-08 11:02:16 +02:00
b318e8d039 VS2019 support added 2020-09-04 23:06:57 +02:00
997d5f22f1 glide_computer example documentation updated 2020-06-22 21:35:24 +02:00
b4121707df length_3d added in glide_computer 2020-06-22 19:41:34 +02:00
7445a2bcf1 glide_computer code cleanup 2020-06-22 16:23:18 +02:00
f55eacfa85 glide_computer example added 2020-06-21 10:37:45 +02:00