Struct salvo::http::headers::ContentRange [−][src]
pub struct ContentRange { /* fields omitted */ }
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 = *CHAR
Example
use headers::ContentRange;
// 100 bytes (included byte 199), with a full length of 3,400
let cr = ContentRange::bytes(100..200, 3400).unwrap();
Implementations
pub 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.
Create a new ContentRange
stating the range could not be satisfied.
The passed argument is the complete length of the entity.
Get the byte range if satisified.
Note that these byte ranges are inclusive on both ends.
Trait Implementations
The name of this header.
pub fn decode<'i, I>(values: &mut I) -> Result<ContentRange, Error> where
I: Iterator<Item = &'i HeaderValue>,
pub fn decode<'i, I>(values: &mut I) -> Result<ContentRange, Error> where
I: Iterator<Item = &'i HeaderValue>,
Decode this type from an iterator of HeaderValue
s.
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ContentRange
impl Send for ContentRange
impl Sync for ContentRange
impl Unpin for ContentRange
impl UnwindSafe for ContentRange
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self