Crates.io | reset-recognizer |
lib.rs | reset-recognizer |
version | 0.8.0 |
source | src |
created_at | 2019-09-16 19:32:26.703096 |
updated_at | 2020-01-21 20:50:03.408172 |
description | A RegexSet based route recognizer |
homepage | |
repository | https://github.com/kardeiz/reset-router |
max_upload_size | |
id | 165254 |
size | 15,341 |
A fast RegexSet
based path router, in the style of
route-recognizer.
reset-router, a higher level path router for use with Hyper 0.13, uses this library internally.
let router = reset_recognizer::Router::build()
.add(r"^/posts/(.+)/comments/(.+)$", "comment".to_string())
.add(r"^/posts/(.+)/comments$", "comments".to_string())
.add(r"^/posts/(.+)$", "post".to_string())
.add(r"^/posts$", "posts".to_string())
.add(r"^/comments$", "comments2".to_string())
.add(r"^/comments/(.+)$", "comment2".to_string())
.add_with_priority(r"^/(.+)$", 1, "not_found".to_string())
.finish()?;
let matched = router.recognize("/posts/100/comments/200")?;
let (post_id, comment_id) = matched.captures.parsed::<(i32, i32)>()?;
println!("{:?}", (&matched.handler, &post_id, &comment_id));
Current version: 0.8.0
License: MIT