我想通过使用JSON配置文件来定义常量值,如下所示:
enum E {
ONE = get!(include_json!("a.json"), 0),
TWO = get!(include_json!("a.json"), 1),
}
有什么办法可以在编译时解析JSON?
最佳答案
有多种在编译时解析json的方法。按照“参与”的顺序:
build.rs
script生成您的源代码;当然是技术上的作弊,但这很简单const
结合使用include_str!
函数,这将需要每晚进行一次,但我不确定当前的编译时引擎是否足够强大,即include_str!
,它也需要每晚进行一次,并且接口(interface)可能会随着编译器的每个发行版而变化。 因此,我建议您现在使用
build.rs
脚本方法,因为它既简单又稳定。