| Crates.io | typus_fugit |
| lib.rs | typus_fugit |
| version | 0.1.3 |
| created_at | 2024-12-04 22:14:38.89551+00 |
| updated_at | 2024-12-10 21:07:22.565742+00 |
| description | `typenum` powered time library for the embedded ecosystem. |
| homepage | |
| repository | https://github.com/Ben-PH/typus_fugit |
| max_upload_size | |
| id | 1472588 |
| size | 173,299 |
typus_fugit
typus_fugitprovides a comprehensive library ofDurationandInstantfor the handling of time in embedded systems, using compile-time types to represent values.
This library began as a fork of fugit, which is, in turn, a heavily inspired of std::chrono's Duration from C++ which does all it can at compile time.
The decision to fork was due to the desire to replace const-generics values represented in the type system. This provides:
Initial implementation uses typenum for type-level values and evaluation. There is an intent to migrate to type_eval when it's ready.
typus_fugit over fugit?I cannot escape the fact that forking fugit fractures the ecosystem. Please do not use, or depend, on this crate, unless the topics of values at the type-level is of interest to you. This crate is, in significant part, motivated by assessing the reality of what a migration from const-generics to type-vals would look like.
fugit
fugit decides to migrate to types instead of consts, the result should not look very different to typus_fugitno_std library with goals of user-friendliness and performance first
const fn where the possible.u32 and u64 backing storage with efficient instruction lowering on MCUs
u32 and u64 except when changing base on u64u32 and u64 do not use division, only changing base with all constants calculated at compile timeThe original fugit name, as I understand it, comes from the latin phrase "tempus fugit", i.e. "time flies".
typus_fugit is a pun coming from said understanding.