diff options
| author | Fuwn <[email protected]> | 2025-01-14 08:06:15 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2025-01-14 08:06:15 +0000 |
| commit | ccfbaf87428a27d139b95ec6ae5a872e9a85ea20 (patch) | |
| tree | bcc28081c1ee849ac236830db2014df4c107820a /src | |
| parent | format(configuration): reformat using rustfmt rules (diff) | |
| download | september-ccfbaf87428a27d139b95ec6ae5a872e9a85ea20.tar.xz september-ccfbaf87428a27d139b95ec6ae5a872e9a85ea20.zip | |
refactor(url): simplify approach
Diffstat (limited to 'src')
| -rw-r--r-- | src/url.rs | 98 |
1 files changed, 46 insertions, 52 deletions
@@ -5,61 +5,55 @@ pub fn from_path( fallback: bool, configuration: &mut crate::response::configuration::Configuration, ) -> Result<Url, url::ParseError> { - Ok( - #[allow(clippy::blocks_in_conditions)] - match Url::try_from(&*if path.starts_with("/proxy") { - configuration.set_proxy(true); + Url::try_from(&*if path.starts_with("/proxy") { + configuration.set_proxy(true); - format!( - "gemini://{}{}", - path.replace("/proxy/", ""), - if fallback { "/" } else { "" } - ) - } else if path.starts_with("/x") { - configuration.set_proxy(true); + format!( + "gemini://{}{}", + path.replace("/proxy/", ""), + if fallback { "/" } else { "" } + ) + } else if path.starts_with("/x") { + configuration.set_proxy(true); - format!( - "gemini://{}{}", - path.replace("/x/", ""), - if fallback { "/" } else { "" } - ) - } else if path.starts_with("/raw") { - configuration.set_proxy(true); - configuration.set_raw(true); + format!( + "gemini://{}{}", + path.replace("/x/", ""), + if fallback { "/" } else { "" } + ) + } else if path.starts_with("/raw") { + configuration.set_proxy(true); + configuration.set_raw(true); - format!( - "gemini://{}{}", - path.replace("/raw/", ""), - if fallback { "/" } else { "" } - ) - } else if path.starts_with("/nocss") { - configuration.set_proxy(true); - configuration.set_no_css(true); + format!( + "gemini://{}{}", + path.replace("/raw/", ""), + if fallback { "/" } else { "" } + ) + } else if path.starts_with("/nocss") { + configuration.set_proxy(true); + configuration.set_no_css(true); - format!( - "gemini://{}{}", - path.replace("/nocss/", ""), - if fallback { "/" } else { "" } - ) - } else { - format!( - "{}{}{}", - { - std::env::var("ROOT").unwrap_or_else(|_| { - warn!( - "could not use ROOT from environment variables, proceeding with \ - default root: gemini://fuwn.me" - ); + format!( + "gemini://{}{}", + path.replace("/nocss/", ""), + if fallback { "/" } else { "" } + ) + } else { + format!( + "{}{}{}", + { + std::env::var("ROOT").unwrap_or_else(|_| { + warn!( + "could not use ROOT from environment variables, proceeding with \ + default root: gemini://fuwn.me" + ); - "gemini://fuwn.me".to_string() - }) - }, - path, - if fallback { "/" } else { "" } - ) - }) { - Ok(url) => url, - Err(e) => return Err(e), - }, - ) + "gemini://fuwn.me".to_string() + }) + }, + path, + if fallback { "/" } else { "" } + ) + }) } |