Expand description
Async io, written in fsm style
IO ops are written as async state machines that thread the state through the futures to avoid being encumbered by lifetimes.
This makes them occasionally a bit verbose to use, but allows being generic without having to box the futures.
The traits to perform async io are re-exported from iroh-io.
Re-exports§
pub use super::BaoContentItem;
Structs§
- Response
Decoder - Response decoder
Enums§
- Response
Decoder Next - Next type for ResponseDecoder.
Traits§
- Async
Slice Reader - A trait to abstract async reading from different resource.
- Async
Slice Writer - A trait to abstract async writing to different resources.
- Create
Outboard - Convenience trait to initialize an outboard from a data source.
- Outboard
- A binary merkle tree for blake3 hashes of a blob.
- Outboard
Mut - A mutable outboard.
Functions§
- copy
- Copy an outboard to another outboard.
- decode_
ranges - Decode a response into a file while updating an outboard.
- encode_
ranges - Encode ranges relevant to a query from a reader and outboard to a writer
- encode_
ranges_ validated - Encode ranges relevant to a query from a reader and outboard to a writer
- outboard
- Compute the outboard for the given data.
- outboard_
post_ order - Compute the post order outboard for the given data, writing into a io::Write
- valid_
outboard_ ranges - Given just an outboard, compute all valid ranges.
- valid_
ranges - Given a data file and an outboard, compute all valid ranges.