Connection

Struct Connection 

Source
pub struct Connection(/* private fields */);
Expand description

Connection header, defined in RFC7230

The Connection header field allows the sender to indicate desired control options for the current connection. In order to avoid confusing downstream recipients, a proxy or gateway MUST remove or replace any received connection options before forwarding the message.

§ABNF

Connection        = 1#connection-option
connection-option = token

# Example values
* `close`
* `keep-alive`
* `upgrade`

§Examples

use headers::Connection;

let keep_alive = Connection::keep_alive();

Implementations§

Source§

impl Connection

Source

pub fn close() -> Connection

A constructor to easily create a Connection: close header.

Source

pub fn keep_alive() -> Connection

A constructor to easily create a Connection: keep-alive header.

Source

pub fn upgrade() -> Connection

A constructor to easily create a Connection: Upgrade header.

Source

pub fn contains(&self, name: impl AsConnectionOption) -> bool

Check if this header contains a given “connection option”.

This can be used with various argument types:

  • &str
  • &HeaderName
  • HeaderName
§Example
extern crate http;

use http::header::UPGRADE;
use headers::Connection;

let conn = Connection::keep_alive();

assert!(!conn.contains("close"));
assert!(!conn.contains(UPGRADE));
assert!(conn.contains("keep-alive"));
assert!(conn.contains("Keep-Alive"));

Trait Implementations§

Source§

impl Clone for Connection

Source§

fn clone(&self) -> Connection

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 Connection

Source§

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

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

impl FromIterator<HeaderName> for Connection

Source§

fn from_iter<I>(iter: I) -> Self
where I: IntoIterator<Item = HeaderName>,

Creates a value from an iterator. Read more
Source§

impl Header for Connection

Source§

fn name() -> &'static HeaderName

The name of this header.
Source§

fn decode<'i, I>(values: &mut I) -> Result<Self, Error>
where I: Iterator<Item = &'i HeaderValue>,

Decode this type from an iterator of HeaderValues.
Source§

fn encode<E: Extend<HeaderValue>>(&self, values: &mut E)

Encode this type to a HeaderMap. 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> 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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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

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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 40 bytes