Skip to main content

ResponseWriter

Struct ResponseWriter 

Source
pub struct ResponseWriter<'buffer> { /* private fields */ }
Expand description

Exclusive transport access to one admitted caller-owned response prefix.

This handle is only obtainable from ResponseBuffer::writer. It cannot substitute an external or static body slice. Response mutation and commitment require a cleanup-owning ResponseAttempt.

use cloud_sdk::transport::{ResponseWriter, ResponseWriterError};
fn bypass_attempt(writer: &mut ResponseWriter<'_>) -> Result<(), ResponseWriterError>
{ writer.body_mut()?.fill(0x5a); Ok(()) }

Implementations§

Source§

impl<'buffer> ResponseWriter<'buffer>

Source

pub fn begin_attempt( &mut self, ) -> Result<ResponseAttempt<'_, 'buffer>, ResponseWriterError>

Starts one transactional transport attempt.

Any residue from an earlier uncommitted attempt is cleared first. The returned guard clears body and header storage unless it commits.

Source

pub const fn body_capacity(&self) -> usize

Returns the admitted response-body capacity.

Source

pub const fn headers(&self) -> &ResponseHeaders<'buffer>

Returns the response headers captured so far.

Source

pub const fn is_committed(&self) -> bool

Reports whether the transport committed the response.

Trait Implementations§

Source§

impl Debug for ResponseWriter<'_>

Source§

fn fmt(&self, formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<'buffer> !UnwindSafe for ResponseWriter<'buffer>

§

impl<'buffer> Freeze for ResponseWriter<'buffer>

§

impl<'buffer> RefUnwindSafe for ResponseWriter<'buffer>

§

impl<'buffer> Send for ResponseWriter<'buffer>

§

impl<'buffer> Sync for ResponseWriter<'buffer>

§

impl<'buffer> Unpin for ResponseWriter<'buffer>

§

impl<'buffer> UnsafeUnpin for ResponseWriter<'buffer>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.