This branch adds a reusable, optionally deserializing oneshot channel to tricky-pipe. The oneshot design is based loosely on the Reusable oneshot from kernel::comms, designed by @jamesmunns, but with fixes for some bugs that came up during loom testing, and support for a type-erased deserializing sender. The oneshot may be stored either in a static or in an Arc, and the user is responsible for providing either to tricky-pipe, allowing the channel itself to be agnostic over the storage approach.
This branch adds a reusable, optionally deserializing oneshot channel to
tricky-pipe
. The oneshot design is based loosely on theReusable
oneshot fromkernel::comms
, designed by @jamesmunns, but with fixes for some bugs that came up duringloom
testing, and support for a type-erased deserializing sender. The oneshot may be stored either in astatic
or in anArc
, and the user is responsible for providing either totricky-pipe
, allowing the channel itself to be agnostic over the storage approach.Closes #11