dris-build
dris-build 是 dris 的 build.rs 侧代码生成器:在编译期扫描组件与构造函数,生成 Container 到 OUT_DIR/dris_gen.rs。
用法
生成代码会引用 dris_rt::All/dris_rt::Type 等路径(直接依赖 dris-rt 即可):
[]
= "0.1.1"
[]
= "0.1.1"
build.rs:
在你的 crate 里引入生成文件:
include!;
然后就可以:
let container = build;
扫描范围
- 扫描当前 crate 的
#[component]/#[constructor]。 - 会尝试递归扫描依赖(path 依赖与 registry 依赖),以支持跨 crate 的组件组合。
- 不做
cfg条件裁剪(会解析src/**/*.rs),因此当前版本不支持在cfg/cfg_attr作用域里声明组件/构造函数(包括#[cfg_attr(..., component/constructor)])。建议把cfg放在实现细节里,不要切换组件类型/构造函数本身。