gossamer/readable_stream

Types

pub type ReadableStream(a)
pub type StreamPipeOption {
  PreventAbort
  PreventCancel
  PreventClose
  Signal(abort_signal.AbortSignal)
}

Constructors

pub type UnderlyingSource(a) {
  Start(fn(default_controller.DefaultController(a)) -> Nil)
  Pull(
    fn(default_controller.DefaultController(a)) -> promise.Promise(
      Nil,
    ),
  )
  Cancel(fn(dynamic.Dynamic) -> promise.Promise(Nil))
}

Constructors

Values

pub fn async_iterator(
  of stream: ReadableStream(a),
) -> async_iterator.AsyncIterator(a, Nil, Nil)
pub fn cancel(
  stream: ReadableStream(a),
  reason reason: r,
) -> promise.Promise(Result(Nil, String))
pub fn from_async_iterator(
  iterator: async_iterator.AsyncIterator(a, r, n),
) -> ReadableStream(a)

Creates a ReadableStream from an AsyncIterator.

Note: Not available on Bun. See https://github.com/oven-sh/bun/issues/3700

pub fn from_iterator(
  iterator: iterator.Iterator(a, r, n),
) -> ReadableStream(a)

Creates a ReadableStream from an Iterator.

Note: Not available on Bun. See https://github.com/oven-sh/bun/issues/3700

pub fn from_start(
  start: fn(default_controller.DefaultController(a)) -> Nil,
) -> ReadableStream(a)
pub fn get_byob_reader(
  stream: ReadableStream(a),
) -> Result(byob_reader.ByobReader(a), String)
pub fn get_reader(
  stream: ReadableStream(a),
) -> Result(reader.Reader(a), String)
pub fn is_locked(stream: ReadableStream(a)) -> Bool
pub fn new(
  source: List(UnderlyingSource(a)),
) -> ReadableStream(a)
pub fn pipe_through(
  stream: ReadableStream(a),
  transform: #(
    ReadableStream(b),
    writable_stream.WritableStream(a),
  ),
  with options: List(StreamPipeOption),
) -> Result(ReadableStream(b), String)
pub fn pipe_to(
  stream: ReadableStream(a),
  destination: writable_stream.WritableStream(a),
  with options: List(StreamPipeOption),
) -> promise.Promise(Result(Nil, String))
pub fn tee(
  stream: ReadableStream(a),
) -> Result(#(ReadableStream(a), ReadableStream(a)), String)
Search Document