Julien Cretin
Julien Cretin
This should help fix #96 by bumping time from 0.1 to 0.2.
This PR is not meant to be merge. It is just an illustration of a possible solution for #80. Feel free to comment directly on the code if it's simpler...
I might be missing something about the rational behind the `HmacImpl` sealed trait (like some implicit invariant), but I'm wondering why `Hkdf` and `HkdfExtract` are not parametrized by `hmac::Mac` instead....
Required tasks: - [x] Use static dispatch instead of dynamic dispatch - [x] Use `static` instead of `const` for pre-defined encodings - [x] Make `Encoding` implementation private - [x] Add...
https://github.com/nrf-rs/nrf-usbd/blob/cbd7ed7508ab0feecbc939e6fa55976fbdf95c6a/src/usbd.rs#L378-L383 Line 380 looks like UB because we're creating a mutable reference to unitialized memory. Some `write` method (from `MaybeUninit` or the raw pointer type) should be used. Line 383...
Currently, the interpreter just returns a field-less enum (essentially: invalid, not found, unsupported, and trap). This is not useful to understand what's wrong. It's possible to use the `debug` feature...
A scheduler reply currently looks like `Result` which does not work nicely with try-blocks that only support one level of `Result`. This is problematic when within the same try-block some...
When calling the prelude with wrong arguments, instead of panicking without error message, an error message could describe the problem. For example when calling `led::set()` with an out-of-bound index. Ideas:...
Search for all functions returning `Result` and fix them if needed. Good candidates are: - `MemoryApi::alloc()` should return `World:NotEnough` (or something similar). - `Applet::{enable,disable}()` should probably return `User::InvalidState`. - `Scheduler::disable_event()`...
The current interpreter is very simple: - It doesn't pre-compute anything. - It executes directly from flash. It is thus an in-place (non-optimized) interpreter according to [A fast in-place interpreter...