pub struct Parts {
pub scheme: Option<Scheme>,
pub authority: Option<Authority>,
pub path_and_query: Option<PathAndQuery>,
/* private fields */
}
Expand description
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
sourceimpl From<Uri> for Parts
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");
sourceimpl HttpTryFrom<Parts> for Uri
impl HttpTryFrom<Parts> for Uri
type Error = InvalidUriParts
type Error = InvalidUriParts
Associated error with the conversion this implementation represents.
Auto Trait Implementations
impl RefUnwindSafe for Parts
impl Send for Parts
impl Sync for Parts
impl Unpin for Parts
impl UnwindSafe for Parts
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more