Enum ConnectionType

Source
pub enum ConnectionType {
    KeepAlive,
    Close,
    Upgrade,
}
Expand description

Connection type

Variants§

§

KeepAlive

§

Close

§

Upgrade

Implementations§

Source§

impl ConnectionType

Source

pub fn resolve( headers_connection_type: Option<ConnectionType>, carry_over_connection_type: Option<ConnectionType>, http11: bool, ) -> Result<Self, HeadersMismatchError>

Resolve the connection type

Resolution is based on:

  • The connection type found in the headers, if any
  • (if the above is missing) based on the carry-over connection type, if any
  • (if the above is missing) based on the HTTP version

Parameters:

  • headers_connection_type: The connection type found in the headers, if any
  • carry_over_connection_type: The carry-over connection type (i.e. if this is a response, the carry_over_connection_type is the connection type of the request)
  • http11: Whether the HTTP protocol is 1.1
Source

pub fn from_header(name: &str, value: &str) -> Option<Self>

Create a connection type from a header

If the header is not a Connection header, this method returns None

Source

pub fn from_headers<'a, H>(headers: H) -> Option<Self>
where H: IntoIterator<Item = (&'a str, &'a str)>,

Create a connection type from headers

If multiple Connection headers are found, this method logs a warning and returns the last one If no Connection headers are found, this method returns None

Source

pub fn raw_header(&self) -> (&str, &[u8])

Create a raw header from the connection type

Trait Implementations§

Source§

impl Clone for ConnectionType

Source§

fn clone(&self) -> ConnectionType

Returns a duplicate 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 ConnectionType

Source§

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

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

impl Display for ConnectionType

Source§

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

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

impl Hash for ConnectionType

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for ConnectionType

Source§

fn eq(&self, other: &ConnectionType) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ConnectionType

Source§

impl Eq for ConnectionType

Source§

impl StructuralPartialEq for ConnectionType

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

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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.