Struct s2n_quic_transport::connection::Connection

source ·
pub struct Connection { /* private fields */ }
Expand description

A QUIC connection

Implementations§

source§

impl Connection

source

pub fn poll_accept( &mut self, stream_type: Option<StreamType>, context: &Context<'_> ) -> Poll<Result<Option<Stream>, Error>>

Accepts an incoming Stream

The method will return

  • Poll::Ready(Ok(Some(stream, stream_type))) if a Stream was accepted
  • Poll::Ready(Ok(None)) if the connection was closed without an error
  • Poll::Ready(Err(stream_error)) if no stream could be accepted due to an error
  • Poll::Pending if no new Stream of the given type was accepted by the connection yet. In this case the caller must retry calling Self::poll_accept. For this purpose the method will save the core::task::Waker which is provided as part of the Context parameter, and notify it as soon as retrying the method will yield a different result.
source

pub fn poll_open_stream( &mut self, stream_type: StreamType, context: &Context<'_> ) -> Poll<Result<Stream, Error>>

source

pub fn poll_request( &self, stream_id: StreamId, request: &mut Request<'_>, context: Option<&Context<'_>> ) -> Result<Response, StreamError>

source

pub fn close(&self, error_code: Error)

Closes the Connection with the provided error code

This will immediately terminate all outstanding streams.

source

pub fn server_name(&self) -> Result<Option<ServerName>, Error>

source

pub fn application_protocol(&self) -> Result<Bytes, Error>

source

pub fn id(&self) -> u64

source

pub fn ping(&self) -> Result<(), Error>

source

pub fn keep_alive(&self, enabled: bool) -> Result<(), Error>

source

pub fn local_address(&self) -> Result<SocketAddress, Error>

source

pub fn remote_address(&self) -> Result<SocketAddress, Error>

source

pub fn query_event_context(&self, query: &mut dyn Query) -> Result<(), Error>

source

pub fn query_event_context_mut( &self, query: &mut dyn QueryMut ) -> Result<(), Error>

source

pub fn datagram_mut(&self, query: &mut dyn QueryMut) -> Result<(), Error>

Trait Implementations§

source§

impl Clone for Connection

source§

fn clone(&self) -> Self

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Connection

source§

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

Formats the value using the given formatter. Read more
source§

impl Drop for Connection

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

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> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.
source§

impl<T, U> Upcast<T> for U
where T: UpcastFrom<U>,

source§

fn upcast(self) -> T

source§

impl<T, B> UpcastFrom<Counter<T, B>> for T

source§

fn upcast_from(value: Counter<T, B>) -> T