rust_web_server/url/
mod.rs

1#[cfg(test)]
2mod tests;
3#[cfg(test)]
4mod example;
5
6use std::collections::HashMap;
7use url_build_parse::{build_url, parse_url, UrlComponents};
8use url_search_params::{build_url_search_params, encode_uri_component, parse_url_search_params};
9use url_search_params::decode_uri_component;
10
11pub struct URL;
12
13impl URL {
14    pub fn percent_encode(component: &str) -> String {
15        encode_uri_component(component)
16    }
17
18    pub fn percent_decode(component: &str) -> String {
19        decode_uri_component(component)
20    }
21
22    pub fn build_query(params: HashMap<String, String>) -> String {
23        build_url_search_params(params)
24    }
25
26    pub fn parse_query(component: &str) -> HashMap<String, String> {
27        parse_url_search_params(component)
28    }
29
30    pub fn build(components: UrlComponents) -> Result<String, String> {
31        build_url(components)
32    }
33
34    pub fn parse(url: &str) -> Result<UrlComponents, String> {
35        parse_url(url)
36    }
37}