Macro konst::konst [−][src]
macro_rules! konst { ($type : ty, $expr : expr $(,) *) => { ... }; }
Expand description
Emulates the inline const feature, eg: const{ foo() }
,
As opposed to inline const, you must pass the type that the expression evaluates to.
Limitations
This can’t be used with expressions that reference generic parameters.
Example
use konst::{konst, eq_str}; const FOO: &str = "hello"; // By using `konst` here, the function is unconditionally evaluated at compile-time. if konst!{bool, eq_str(FOO, "hi")} { panic!("The constants are equal, this wasn't supposed to happen!!"); }