ruled-router-derive

Crates.ioruled-router-derive
lib.rsruled-router-derive
version0.0.4
created_at2025-08-23 09:45:14.901816+00
updated_at2025-08-27 17:36:11.182265+00
descriptionProcedural macros for ruled-router
homepagehttps://github.com/Respo/ruled-router.rs
repositoryhttps://github.com/Respo/ruled-router.rs
max_upload_size
id1807363
size63,715
题叶 (tiye)

documentation

https://docs.rs/ruled-router-derive

README

ruled-router-derive

这是 ruled-router 的派生宏包,提供了便捷的宏来自动生成路由匹配和查询参数解析代码。

基础用法

RouterMatch 派生宏

为结构体自动生成路由匹配逻辑:

use ruled_router_derive::RouterMatch;

#[derive(RouterMatch)]
struct UserRoute {
    #[route(pattern = "/users/{id}")]
    user_id: u32,
}

Query 派生宏

为结构体自动生成查询参数解析器:

use ruled_router_derive::Query;

#[derive(Query)]
struct SearchQuery {
    q: Option<String>,
    page: Option<u32>,
    limit: Option<u32>,
}

Route 派生宏

为结构体自动生成完整的路由处理逻辑:

use ruled_router_derive::Route;

#[derive(Route)]
#[route(pattern = "/api/v1")]
struct ApiRoute {
    #[query]
    params: SearchQuery,
    #[route]
    user: UserRoute,
}

完整文档和高级用法

更多详细的使用方法、高级特性和示例,请访问主包文档:

https://crates.io/crates/ruled-router

许可证

本项目采用 MIT 许可证。详情请参见 LICENSE 文件。

Commit count: 31

cargo fmt