Crate multipart_write

Crate multipart_write 

Source
Expand description

§Description

This crate contains the trait MultipartWrite, assorted implementations, and combinators.

A MultipartWrite is a similar interface to Sink, except that writing an item or completing the write both return values.

Here is a conceptual example of a MultipartWrite.

§Motivation

Sink is a useful API, but it is just that–a sink. The end of a stream. It’s useful to have the backpressure mechanism that poll_ready/start_send enables, and it’s nice to have the flexibility that the shape of it provides in what kinds of things you can forward to it.

The idea for MultipartWrite is to:

  1. Have the same desirable properies as Sink.
  2. Be able to be inserted at more locations in a stream computation.
  3. Be useful in more cases by having a value returned when starting a write.
  4. Be able to transform a stream into another stream, which is really just a more specific phrasing of 3.

Modules§

io
MultipartWrite for foreign IO writer types.
prelude
A prelude for this crate.
stream
Using MultipartWrite with streams.
write
MultipartWrite combinators.

Traits§

FusedMultipartWrite
A writer that tracks whether or not the underlying writer should no longer be polled.
MultipartWrite
MultipartWrite is a Sink-like interface for asynchronously writing an object in parts.

Type Aliases§

BoxMultipartWrite
An owned, dynamically typed MultipartWrite for use in cases where it is not possible or desirable to statically type it.
LocalBoxMultipartWrite
BoxMultipartWrite but without the Send requirement.