aboutsummaryrefslogtreecommitdiff
path: root/src/url.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/url.rs')
-rw-r--r--src/url.rs98
1 files changed, 46 insertions, 52 deletions
diff --git a/src/url.rs b/src/url.rs
index f6863a5..289c5cb 100644
--- a/src/url.rs
+++ b/src/url.rs
@@ -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 { "" }
+ )
+ })
}