[][src]Struct wasm_streams::writable::WritableStream

pub struct WritableStream { /* fields omitted */ }

A WritableStream.

WritableStreams can be created from a raw JavaScript stream with from_raw, or from a Rust Sink with from_sink.

They can be converted into a raw JavaScript stream with into_raw, or into a Rust Sink with into_sink.

Implementations

impl WritableStream[src]

pub fn from_raw(raw: WritableStream) -> Self[src]

Creates a new WritableStream from a JavaScript stream.

pub fn from_sink<Si>(sink: Si) -> Self where
    Si: Sink<JsValue, Error = JsValue> + 'static, 
[src]

Creates a new WritableStream from a Sink.

Items and errors must be represented as raw JsValues. Use with and/or sink_map_err to convert a sink's items to a JsValue before passing it to this function.

pub fn as_raw(&self) -> &WritableStream[src]

Acquires a reference to the underlying JavaScript stream.

pub fn into_raw(self) -> WritableStream[src]

Consumes this WritableStream, returning the underlying JavaScript stream.

pub fn is_locked(&self) -> bool[src]

Returns true if the stream is locked to a writer.

pub async fn abort<'_>(&'_ mut self) -> Result<(), JsValue>[src]

Aborts the stream, signaling that the producer can no longer successfully write to the stream and it is to be immediately moved to an errored state, with any queued-up writes discarded.

If the stream is currently locked to a writer, then this returns an error.

pub async fn abort_with_reason<'_, '_>(
    &'_ mut self,
    reason: &'_ JsValue
) -> Result<(), JsValue>
[src]

Aborts the stream with the given reason, signaling that the producer can no longer successfully write to the stream and it is to be immediately moved to an errored state, with any queued-up writes discarded.

If the stream is currently locked to a writer, then this returns an error.

pub fn get_writer(&mut self) -> WritableStreamDefaultWriter[src]

Creates a writer and locks the stream to the new writer.

While the stream is locked, no other writer can be acquired until this one is released.

Panics if the stream is already locked to a writer. For a non-panicking variant, use try_get_writer.

pub fn try_get_writer(&mut self) -> Result<WritableStreamDefaultWriter, Error>[src]

Try to create a writer and lock the stream to the new writer.

While the stream is locked, no other writer can be acquired until this one is released.

If the stream is already locked to a writer, then this returns an error.

pub fn into_sink(self) -> IntoSink<'static>[src]

Converts this WritableStream into a Sink.

Items and errors are represented by their raw JsValue. Use with and/or sink_map_err on the returned stream to convert them to a more appropriate type.

Panics if the stream is already locked to a writer. For a non-panicking variant, use try_into_sink.

pub fn try_into_sink(self) -> Result<IntoSink<'static>, (Error, Self)>[src]

Try to convert this WritableStream into a Sink.

Items and errors are represented by their raw JsValue. Use with and/or sink_map_err on the returned stream to convert them to a more appropriate type.

If the stream is already locked to a writer, then this returns an error along with the original WritableStream.

Trait Implementations

impl Debug for WritableStream[src]

impl<Si> From<Si> for WritableStream where
    Si: Sink<JsValue, Error = JsValue> + 'static, 
[src]

fn from(sink: Si) -> Self[src]

Equivalent to from_sink.

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.