W3cubDocs

/Rust

Macro std::env

macro_rules! env {
    ($name:expr) => { ... };
    ($name:expr,) => { ... };
}

Inspects an environment variable at compile time.

This macro will expand to the value of the named environment variable at compile time, yielding an expression of type &'static str.

If the environment variable is not defined, then a compilation error will be emitted. To not emit a compile error, use the option_env! macro instead.

Examples

let path: &'static str = env!("PATH");
println!("the $PATH variable at the time of compiling was: {}", path);

You can customize the error message by passing a string as the second parameter:

ⓘThis example deliberately fails to compile
let doc: &'static str = env!("documentation", "what's that?!");

If the documentation environment variable is not defined, you'll get the following error:

error: what's that?!

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/macro.env.html