[−][src]Struct websocket::header::EntityTag
An entity tag, defined in RFC7232
An entity tag consists of a string enclosed by two literal double quotes.
Preceding the first double quote is an optional weakness indicator,
which always looks like W/. Examples for valid tags are "xyzzy" and W/"xyzzy".
ABNF
entity-tag = [ weak ] opaque-tag
weak = %x57.2F ; "W/", case-sensitive
opaque-tag = DQUOTE *etagc DQUOTE
etagc = %x21 / %x23-7E / obs-text
; VCHAR except double quotes, plus obs-text
Comparison
To check if two entity tags are equivalent in an application always use the strong_eq or
weak_eq methods based on the context of the Tag. Only use == to check if two tags are
identical.
The example below shows the results for a set of entity-tag pairs and both the weak and strong comparison function results:
| ETag 1 | ETag 2 | Strong Comparison | Weak Comparison |
|---|---|---|---|
W/"1" | W/"1" | no match | match |
W/"1" | W/"2" | no match | no match |
W/"1" | "1" | no match | match |
"1" | "1" | match | match |
Fields
weak: bool
Weakness indicator for the tag
Methods
impl EntityTag[src]
impl EntityTagpub fn new(weak: bool, tag: String) -> EntityTag[src]
pub fn new(weak: bool, tag: String) -> EntityTagpub fn weak(tag: String) -> EntityTag[src]
pub fn weak(tag: String) -> EntityTagpub fn strong(tag: String) -> EntityTag[src]
pub fn strong(tag: String) -> EntityTagpub fn tag(&self) -> &str[src]
pub fn tag(&self) -> &strGet the tag.
pub fn set_tag(&mut self, tag: String)[src]
pub fn set_tag(&mut self, tag: String)pub fn strong_eq(&self, other: &EntityTag) -> bool[src]
pub fn strong_eq(&self, other: &EntityTag) -> boolFor strong comparison two entity-tags are equivalent if both are not weak and their opaque-tags match character-by-character.
pub fn weak_eq(&self, other: &EntityTag) -> bool[src]
pub fn weak_eq(&self, other: &EntityTag) -> boolFor weak comparison two entity-tags are equivalent if their opaque-tags match character-by-character, regardless of either or both being tagged as "weak".
pub fn strong_ne(&self, other: &EntityTag) -> bool[src]
pub fn strong_ne(&self, other: &EntityTag) -> boolThe inverse of EntityTag.strong_eq().
pub fn weak_ne(&self, other: &EntityTag) -> bool[src]
pub fn weak_ne(&self, other: &EntityTag) -> boolThe inverse of EntityTag.weak_eq().
Trait Implementations
impl Debug for EntityTag[src]
impl Debug for EntityTagfn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter. Read more
impl Display for EntityTag[src]
impl Display for EntityTagfn fmt(&self, f: &mut Formatter) -> Result<(), Error>[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>Formats the value using the given formatter. Read more
impl FromStr for EntityTag[src]
impl FromStr for EntityTagtype Err = Error
The associated error which can be returned from parsing.
fn from_str(s: &str) -> Result<EntityTag, Error>[src]
fn from_str(s: &str) -> Result<EntityTag, Error>Parses a string s to return a value of this type. Read more
impl PartialEq<EntityTag> for EntityTag[src]
impl PartialEq<EntityTag> for EntityTagfn eq(&self, other: &EntityTag) -> bool[src]
fn eq(&self, other: &EntityTag) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &EntityTag) -> bool[src]
fn ne(&self, other: &EntityTag) -> boolThis method tests for !=.
impl Eq for EntityTag[src]
impl Eq for EntityTagimpl Clone for EntityTag[src]
impl Clone for EntityTagAuto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>, [src]
impl<T, U> Into for T where
U: From<T>, impl<T> ToString for T where
T: Display + ?Sized, [src]
impl<T> ToString for T where
T: Display + ?Sized, impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, type Owned = T
fn to_owned(&self) -> T[src]
fn to_owned(&self) -> TCreates owned data from borrowed data, usually by cloning. Read more
fn clone_into(&self, target: &mut T)[src]
fn clone_into(&self, target: &mut T)🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> From for T[src]
impl<T> From for Timpl<T, U> TryFrom for T where
T: From<U>, [src]
impl<T, U> TryFrom for T where
T: From<U>, type Error = !
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>try_from)Performs the conversion.
impl<T> Borrow for T where
T: ?Sized, [src]
impl<T> Borrow for T where
T: ?Sized, impl<T> BorrowMut for T where
T: ?Sized, [src]
impl<T> BorrowMut for T where
T: ?Sized, fn borrow_mut(&mut self) -> &mut T[src]
fn borrow_mut(&mut self) -> &mut TMutably borrows from an owned value. Read more
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
impl<T, U> TryInto for T where
U: TryFrom<T>, type Error = <U as TryFrom<T>>::Error
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>try_from)Performs the conversion.
impl<T> Any for T where
T: 'static + ?Sized, [src]
impl<T> Any for T where
T: 'static + ?Sized, fn get_type_id(&self) -> TypeId[src]
fn get_type_id(&self) -> TypeId🔬 This is a nightly-only experimental API. (get_type_id)
this method will likely be replaced by an associated static
Gets the TypeId of self. Read more
impl<T> Typeable for T where
T: Any, [src]
impl<T> Typeable for T where
T: Any, impl<T> Erased for T[src]
impl<T> Erased for T