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

The scheme component of a URI

The authority component of a URI

The origin-form component of a URI

Trait Implementations

impl Debug for Parts
[src]

Formats the value using the given formatter. Read more

impl Default for Parts
[src]

Returns the "default value" for a type. Read more

impl HttpTryFrom<Parts> for Uri
[src]

Associated error with the conversion this implementation represents.

impl From<Uri> for Parts
[src]

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");

Performs the conversion.

Auto Trait Implementations

impl Send for Parts

impl Sync for Parts