Expand description
This crate provides two media type structs: MediaType
and MediaTypeBuf
.
MediaType
does not copy data during parsing and borrows the original string. It is also const-constructible.MediaTypeBuf
is an owned and immutable version ofMediaType
.
use mediatype::{names::*, MediaType, MediaTypeBuf};
const TEXT_PLAIN: MediaType = MediaType::new(TEXT, PLAIN);
let text_plain: MediaTypeBuf = "text/plain".parse().unwrap();
assert_eq!(text_plain, TEXT_PLAIN);
§Letter case handling
MediaType
and MediaTypeBuf
preserve the original string’s letter case.
Comparisons for MediaType
, MediaTypeBuf
and Name
are case-insensitive
except parameter values.
let lower: MediaTypeBuf = "text/plain; charset=UTF-8".parse().unwrap();
let upper: MediaTypeBuf = "TEXT/PLAIN; CHARSET=UTF-8".parse().unwrap();
assert_eq!(lower.as_str(), "text/plain; charset=UTF-8");
assert_eq!(upper.as_str(), "TEXT/PLAIN; CHARSET=UTF-8");
assert_eq!(lower, upper);
assert_eq!(lower.ty(), "Text");
assert_eq!(upper.subty(), "Plain");
Modules§
- names
- Predefined names, @generated in tests/codegen.rs
- values
- Predefined parameter values, @generated in tests/codegen.rs
Macros§
- media_
type - Convenient macro to construct a
MediaType
.
Structs§
- Media
Type - A borrowed media type.
- Media
Type Buf - An owned and immutable media type.
- Media
Type List - A comma-separated list of
MediaType
s used in the HTTPAccept
header. (RFC 7231) - Name
- A media-type name.
- Params
- An iterator over the parameters.
- Value
- A media-type parameter value.
Enums§
- Media
Type Error - Media-type format error.
Traits§
- Read
Params - A trait for getting parameter values.
- Write
Params - A trait for mutating parameter values.