Struct viz_core::headers::ContentRange
source · pub struct ContentRange { /* private fields */ }Expand description
Content-Range, described in RFC7233
ABNF
Content-Range = byte-content-range
/ other-content-range
byte-content-range = bytes-unit SP
( byte-range-resp / unsatisfied-range )
byte-range-resp = byte-range "/" ( complete-length / "*" )
byte-range = first-byte-pos "-" last-byte-pos
unsatisfied-range = "*/" complete-length
complete-length = 1*DIGIT
other-content-range = other-range-unit SP other-range-resp
other-range-resp = *CHARExample
use headers::ContentRange;
// 100 bytes (included byte 199), with a full length of 3,400
let cr = ContentRange::bytes(100..200, 3400).unwrap();Implementations§
source§impl ContentRange
impl ContentRange
sourcepub fn bytes(
range: impl RangeBounds<u64>,
complete_length: impl Into<Option<u64>>
) -> Result<ContentRange, InvalidContentRange>
pub fn bytes(
range: impl RangeBounds<u64>,
complete_length: impl Into<Option<u64>>
) -> Result<ContentRange, InvalidContentRange>
Construct a new Content-Range: bytes .. header.
sourcepub fn unsatisfied_bytes(complete_length: u64) -> ContentRange
pub fn unsatisfied_bytes(complete_length: u64) -> ContentRange
Create a new ContentRange stating the range could not be satisfied.
The passed argument is the complete length of the entity.
sourcepub fn bytes_range(&self) -> Option<(u64, u64)>
pub fn bytes_range(&self) -> Option<(u64, u64)>
Get the byte range if satisified.
Note that these byte ranges are inclusive on both ends.
Trait Implementations§
source§impl Clone for ContentRange
impl Clone for ContentRange
source§fn clone(&self) -> ContentRange
fn clone(&self) -> ContentRange
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for ContentRange
impl Debug for ContentRange
source§impl Header for ContentRange
impl Header for ContentRange
source§fn name() -> &'static HeaderName
fn name() -> &'static HeaderName
The name of this header.
source§fn decode<'i, I>(values: &mut I) -> Result<ContentRange, Error>where
I: Iterator<Item = &'i HeaderValue>,
fn decode<'i, I>(values: &mut I) -> Result<ContentRange, Error>where
I: Iterator<Item = &'i HeaderValue>,
Decode this type from an iterator of
HeaderValues.