From 424b0d38fe0fae0852be07d6aaab9b3042e89725 Mon Sep 17 00:00:00 2001 From: Jed Denlea Date: Wed, 16 Mar 2022 17:43:27 -0700 Subject: [PATCH] Fix Uri docs The doc comments for `impl From for Parts` actually described `Uri::from_parts`. --- src/uri/mod.rs | 70 +++++++++++++++++++++++++------------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/src/uri/mod.rs b/src/uri/mod.rs index 3881f82e..30be83b5 100644 --- a/src/uri/mod.rs +++ b/src/uri/mod.rs @@ -201,7 +201,40 @@ impl Uri { Builder::new() } - /// Attempt to convert a `Uri` from `Parts` + /// Attempt to convert a `Parts` into a `Uri`. + /// + /// # Examples + /// + /// Relative URI + /// + /// ``` + /// # use http::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().is_none()); + /// assert!(uri.authority().is_none()); + /// ``` + /// + /// Absolute URI + /// + /// ``` + /// # use http::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().unwrap().as_str(), "http"); + /// assert_eq!(uri.authority().unwrap(), "foo.com"); + /// assert_eq!(uri.path(), "/foo"); + /// ``` pub fn from_parts(src: Parts) -> Result { if src.scheme.is_some() { if src.authority.is_none() { @@ -758,40 +791,7 @@ impl From for Uri { } } -/// Convert a `Uri` from parts -/// -/// # Examples -/// -/// Relative URI -/// -/// ``` -/// # use http::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().is_none()); -/// assert!(uri.authority().is_none()); -/// ``` -/// -/// Absolute URI -/// -/// ``` -/// # use http::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().unwrap().as_str(), "http"); -/// assert_eq!(uri.authority().unwrap(), "foo.com"); -/// assert_eq!(uri.path(), "/foo"); -/// ``` +/// Convert a `Uri` into `Parts` impl From for Parts { fn from(src: Uri) -> Self { let path_and_query = if src.has_path() {