Enum hyper::header::IfRange [] [src]

pub enum IfRange {

If-Range header, defined in RFC7233

If a client has a partial copy of a representation and wishes to have an up-to-date copy of the entire representation, it could use the Range header field with a conditional GET (using either or both of If-Unmodified-Since and If-Match.) However, if the precondition fails because the representation has been modified, the client would then have to make a second request to obtain the entire current representation.

The If-Range header field allows a client to "short-circuit" the second request. Informally, its meaning is as follows: if the representation is unchanged, send me the part(s) that I am requesting in Range; otherwise, send me the entire representation.


If-Range = entity-tag / HTTP-date

Example values

  • Sat, 29 Oct 1994 19:43:31 GMT
  • \"xyzzy\"


use hyper::header::{Headers, IfRange, EntityTag};

let mut headers = Headers::new();
headers.set(IfRange::EntityTag(EntityTag::new(false, "xyzzy".to_owned())));
use hyper::header::{Headers, IfRange};
use std::time::{SystemTime, Duration};

let mut headers = Headers::new();
let fetched = SystemTime::now() - Duration::from_secs(60 * 60 * 24);


The entity-tag the client has of the resource

The date when the client retrieved the resource

Trait Implementations

impl Clone for IfRange


Returns a copy of the value. Read more


Performs copy-assignment from source. Read more

impl Debug for IfRange


Formats the value using the given formatter.

impl PartialEq for IfRange


This method tests for self and other values to be equal, and is used by ==. Read more


This method tests for !=.

impl Header for IfRange


Returns the name of the header field this belongs to. Read more


Parse a header from a raw stream of bytes. Read more


Format a header to outgoing stream. Read more

impl Display for IfRange


Formats the value using the given formatter. Read more