(value: &str)
| 179 | } |
| 180 | |
| 181 | fn url_path_component(value: &str) -> String { |
| 182 | value |
| 183 | .bytes() |
| 184 | .flat_map(|byte| match byte { |
| 185 | b'A'..=b'Z' | b'a'..=b'z' | b'0'..=b'9' | b'-' | b'_' | b'.' | b'~' => { |
| 186 | vec![byte as char] |
| 187 | } |
| 188 | _ => format!("%{byte:02X}").chars().collect(), |
| 189 | }) |
| 190 | .collect() |
| 191 | } |