multipart-write

Crates.iomultipart-write
lib.rsmultipart-write
version0.1.0-rc5
created_at2025-10-19 08:13:33.885005+00
updated_at2025-11-22 05:43:32.851229+00
descriptionSink-like interface for writing an object in parts
homepage
repositoryhttps://github.com/quasi-coherent/multipart-write
max_upload_size
id1890191
size123,468
quasi-coherent (quasi-coherent)

documentation

README

multipart-write


Crates.io version docs.rs docs

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 valuable to have the backpressure mechanism that poll_ready combined with start_send enables, and it's nice to have the flexibility that the shape of Sink provides in what kinds of values you can send with it.

The idea for MultipartWrite is to:

  1. Have those same desirable properies: backpressure and generic input type.
  2. Be able to be inserted earlier in a stream computation.
  3. Replace Sink when the use case would need a value returned by sending to it or closing it.
  4. Transform a stream by writing it in parts, which is somewhat of a specific rephrasing of the second and third points.
Commit count: 0

cargo fmt