Enum edge_http::io::client::Connection
source · pub enum Connection<'b, T, const N: usize = DEFAULT_MAX_HEADERS_COUNT>where
T: TcpConnect,{
Transition(TransitionState),
Unbound(UnboundState<'b, T, N>),
Request(RequestState<'b, T, N>),
Response(ResponseState<'b, T, N>),
}Variants§
Transition(TransitionState)
Unbound(UnboundState<'b, T, N>)
Request(RequestState<'b, T, N>)
Response(ResponseState<'b, T, N>)
Implementations§
source§impl<'b, T, const N: usize> Connection<'b, T, N>where
T: TcpConnect,
impl<'b, T, const N: usize> Connection<'b, T, N>where
T: TcpConnect,
pub fn new(buf: &'b mut [u8], socket: &'b T, addr: SocketAddr) -> Self
pub async fn reinitialize( &mut self, addr: SocketAddr, ) -> Result<(), Error<T::Error>>
pub async fn initiate_request( &mut self, http11: bool, method: Method, uri: &str, headers: &[(&str, &str)], ) -> Result<(), Error<T::Error>>
pub fn is_request_initiated(&self) -> bool
pub async fn initiate_response(&mut self) -> Result<(), Error<T::Error>>
pub fn is_response_initiated(&self) -> bool
pub async fn initiate_ws_upgrade_request( &mut self, host: Option<&str>, origin: Option<&str>, uri: &str, version: Option<&str>, nonce: &[u8; 16], nonce_base64_buf: &mut [u8; 28], ) -> Result<(), Error<T::Error>>
pub fn is_ws_upgrade_accepted( &self, nonce: &[u8; 16], buf: &mut [u8; 33], ) -> Result<bool, Error<T::Error>>
pub fn split( &mut self, ) -> (&ResponseHeaders<'b, N>, &mut Body<'b, T::Socket<'b>>)
pub fn headers(&self) -> Result<&ResponseHeaders<'b, N>, Error<T::Error>>
pub fn raw_connection(&mut self) -> Result<&mut T::Socket<'b>, Error<T::Error>>
pub fn release(self) -> (T::Socket<'b>, &'b mut [u8])
pub async fn complete(&mut self) -> Result<(), Error<T::Error>>
Trait Implementations§
source§impl<'b, T, const N: usize> ErrorType for Connection<'b, T, N>where
T: TcpConnect,
impl<'b, T, const N: usize> ErrorType for Connection<'b, T, N>where
T: TcpConnect,
source§impl<'b, T, const N: usize> Read for Connection<'b, T, N>where
T: TcpConnect,
impl<'b, T, const N: usize> Read for Connection<'b, T, N>where
T: TcpConnect,
source§async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error>
async fn read(&mut self, buf: &mut [u8]) -> Result<usize, Self::Error>
Read some bytes from this source into the specified buffer, returning how many bytes were read. Read more
source§async fn read_exact(
&mut self,
buf: &mut [u8],
) -> Result<(), ReadExactError<Self::Error>>
async fn read_exact( &mut self, buf: &mut [u8], ) -> Result<(), ReadExactError<Self::Error>>
Read the exact number of bytes required to fill
buf. Read moresource§impl<'b, T, const N: usize> Write for Connection<'b, T, N>where
T: TcpConnect,
impl<'b, T, const N: usize> Write for Connection<'b, T, N>where
T: TcpConnect,
source§async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error>
async fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error>
Write a buffer into this writer, returning how many bytes were written. Read more
Auto Trait Implementations§
impl<'b, T, const N: usize> Freeze for Connection<'b, T, N>
impl<'b, T, const N: usize> RefUnwindSafe for Connection<'b, T, N>
impl<'b, T, const N: usize = DEFAULT_MAX_HEADERS_COUNT> !Send for Connection<'b, T, N>
impl<'b, T, const N: usize = DEFAULT_MAX_HEADERS_COUNT> !Sync for Connection<'b, T, N>
impl<'b, T, const N: usize> Unpin for Connection<'b, T, N>
impl<'b, T, const N: usize = DEFAULT_MAX_HEADERS_COUNT> !UnwindSafe for Connection<'b, T, N>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more