Struct http::uri::Parts [−][src]
pub struct Parts { pub scheme: Option<Scheme>, pub authority: Option<Authority>, pub path_and_query: Option<PathAndQuery>, // some fields omitted }
The various parts of a URI.
This struct is used to provide to and retrieve from a URI.
Fields
scheme: Option<Scheme>
The scheme component of a URI
The authority component of a URI
path_and_query: Option<PathAndQuery>
The origin-form component of a URI
Trait Implementations
impl Debug for Parts
[src]
impl Debug for Parts
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Default for Parts
[src]
impl Default for Parts
impl HttpTryFrom<Parts> for Uri
[src]
impl HttpTryFrom<Parts> for Uri
type Error = InvalidUriParts
Associated error with the conversion this implementation represents.
fn try_from(src: Parts) -> Result<Self, Self::Error>
[src]
fn try_from(src: Parts) -> Result<Self, Self::Error>
impl From<Uri> for Parts
[src]
impl From<Uri> for Parts
Convert a Uri
from parts
Examples
Relative URI
let mut parts = Parts::default(); parts.path_and_query = Some("/foo".parse().unwrap()); let uri = Uri::from_parts(parts).unwrap(); assert_eq!(uri.path(), "/foo"); assert!(uri.scheme_part().is_none()); assert!(uri.authority().is_none());
Absolute URI
let mut parts = Parts::default(); parts.scheme = Some("http".parse().unwrap()); parts.authority = Some("foo.com".parse().unwrap()); parts.path_and_query = Some("/foo".parse().unwrap()); let uri = Uri::from_parts(parts).unwrap(); assert_eq!(uri.scheme_part().unwrap().as_str(), "http"); assert_eq!(uri.authority().unwrap(), "foo.com"); assert_eq!(uri.path(), "/foo");