INNER CODE UNIT · Rust

call

vercel-community/rust · crates/vercel_runtime_router/src/lib.rs:203

    pub fn call(&self, req_path: &str) -> Option<&Route> {
        // Check if there is an optional catch all route
        if let Some(optional_catch_all) = self.routes.iter().find(|r| {
            let dynamic_optional_catch_all_exp = Regex::new(r"\[{2}\.{3}\S+\]{2}").unwrap();
            let optional_catchall_route =
                dynamic_optional_catch_all_exp.replace_all(r.path.as_str(), "");
            let optional_catchall_route = optional_catchall_route.trim_end_matches('/');

            r.kind == RouteKind::OptionalCatchAll && req_path == optional_catchall_route
        }) {
            return Some(optional_catch_all);
        };

        let result = self.routes.iter().find(|route| {
            match route.kind {
                RouteKind::Static => route.path == req_path,
                RouteKind::Dynamic => {
                    let path_segements = get_segments(req_path);

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…