pub enum RangeHeader {
Bytes(Vec<ByteRange>),
Other(String),
}Expand description
The Range request header (RFC 7233 §3.1).
The only range unit currently defined by the spec is bytes.
Other range units are represented by the Other variant.
Variants§
Bytes(Vec<ByteRange>)
bytes=<range-set> — one or more byte ranges.
Other(String)
An unrecognised range unit, preserved as-is.
Trait Implementations§
Source§impl Clone for RangeHeader
impl Clone for RangeHeader
Source§fn clone(&self) -> RangeHeader
fn clone(&self) -> RangeHeader
Returns a duplicate 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 RangeHeader
impl Debug for RangeHeader
Source§impl<'de> Deserialize<'de> for RangeHeader
impl<'de> Deserialize<'de> for RangeHeader
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for RangeHeader
impl Display for RangeHeader
Source§impl FromStr for RangeHeader
impl FromStr for RangeHeader
Source§fn from_str(s: &str) -> Result<Self, Self::Err>
fn from_str(s: &str) -> Result<Self, Self::Err>
Parse a Range header value such as bytes=0-499 or bytes=0-99, 200-299.
use api_bones::range::{ByteRange, RangeHeader};
let h: RangeHeader = "bytes=0-499".parse().unwrap();
assert_eq!(h, RangeHeader::Bytes(vec![ByteRange::FromTo(0, 499)]));
let h2: RangeHeader = "bytes=0-99, 200-299, -50".parse().unwrap();
assert_eq!(h2, RangeHeader::Bytes(vec![
ByteRange::FromTo(0, 99),
ByteRange::FromTo(200, 299),
ByteRange::Suffix(50),
]));Source§type Err = ParseRangeError
type Err = ParseRangeError
The associated error which can be returned from parsing.
Source§impl PartialEq for RangeHeader
impl PartialEq for RangeHeader
Source§impl Serialize for RangeHeader
impl Serialize for RangeHeader
impl Eq for RangeHeader
impl StructuralPartialEq for RangeHeader
Auto Trait Implementations§
impl Freeze for RangeHeader
impl RefUnwindSafe for RangeHeader
impl Send for RangeHeader
impl Sync for RangeHeader
impl Unpin for RangeHeader
impl UnsafeUnpin for RangeHeader
impl UnwindSafe for RangeHeader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ValidateIp for Twhere
T: ToString,
impl<T> ValidateIp for Twhere
T: ToString,
Source§fn validate_ipv4(&self) -> bool
fn validate_ipv4(&self) -> bool
Validates whether the given string is an IP V4
Source§fn validate_ipv6(&self) -> bool
fn validate_ipv6(&self) -> bool
Validates whether the given string is an IP V6
Source§fn validate_ip(&self) -> bool
fn validate_ip(&self) -> bool
Validates whether the given string is an IP