4 Commits

Author SHA1 Message Date
Sosthène Guédon
cc2b153daf Remove the Clone bound 2023-01-31 17:08:53 +01:00
Sosthène Guédon
34701deb9f Add const constructor to interchange
Thanks https://old.reddit.com/r/rust/comments/wwsddr/const_fn_parameter_usage_propagation_throws_errors/ilndzec/
2023-01-31 17:08:53 +01:00
Sosthène Guédon
0e7108a0ad Use RAII to remove the need for reset_claims 2023-01-31 17:08:53 +01:00
Sosthène Guédon
07de0e8b20 Use const instead of macros
This is pretty much a complete rewrite. It gives a much nicer API to
understand from the documentation. It also means that it doesn't rely on
\#[doc(hidden)] methods (except for `Interchange::const_new` so that it
can be removed once the required compiler features are stabilized)

Because everything doesn't need to be `'static` anymore, it can also be
tested efficiently with Loom, ensuring that there are no possible race
conditions.

It is a significantly breaking change
2023-01-31 17:08:53 +01:00