是否可以在编译时从环境变量初始化变量?

Dra*_*ght 1 compile-time-constant rust

我想在编译期间初始化一个变量。例如,我想初始化变量VAR,以VALUE编译代码时:

match env::var("VAR") {
    Ok(value) => println!("Ok {}", value),
    Err(e) => println!("Error ({})", e),
};
Run Code Online (Sandbox Code Playgroud)

但是,我想在no_std上下文中执行此操作,因此无法用于std::env访问环境。是否有可能做到这一点?

She*_*ter 5

env::var没有在编译时得到评估:

从当前进程中获取环境变量键。

您正在寻找std::env!/core::env!std::option_env!/ core::option_env!