mio-serial icon indicating copy to clipboard operation
mio-serial copied to clipboard

How close is `Source` to a `Stream<..some bytes type..>`?

Open akauppi opened this issue 1 year ago • 0 comments

I'm trying to read and write a serial port using streaming, and would like to do it without Tokio dependencies.

mio-serial looks close, but I'm a newbie to Async Rust and cannot estimate "how close". Some observations:

  • Stream is not stable in Rust; I am aware of that
  • SerialStream in this repo does not implement futures::Stream. That is fine - things change and I am not complaining. Just that my initial expectation by the name was ... that it would. Silly me!

I am okey making some glue code in my own code. What I want is to implement the ASH protocol (Silicon Labs, PDF) in Rust. It's an async protocol for UART comms. Two messages can be "in flight" - very suitable for async/.await imho.

I noticed the code has Source but I am not sure what I can do with it.

How close is this to Stream and Sink of bytes, in the fashion that futures_util defines them?

akauppi avatar Apr 04 '24 18:04 akauppi