A lightweight attribute for easy generation of const functions with conditional compilations.
APACHE-2.0 License
Bot releases are visible (Hide)
RUSTC_WRAPPER
in rustc version detection.Published by github-actions[bot] almost 3 years ago
Published by github-actions[bot] over 3 years ago
Published by github-actions[bot] over 3 years ago
Published by github-actions[bot] over 3 years ago
Published by github-actions[bot] almost 4 years ago
Published by github-actions[bot] almost 4 years ago
Accept const_fn
attribute with no arguments and functions without const
keyword.
This allows const_fn
to be used as an optional dependency.
#[cfg_attr(feature = "...", const_fn::const_fn)]
pub fn func() {
/* ... */
}
Published by taiki-e almost 4 years ago
Published by taiki-e about 4 years ago
Published by taiki-e about 4 years ago
Published by taiki-e about 4 years ago
Add support for version-based code generation. The following conditions are available:
use const_fn::const_fn;
// function is `const` on specified version and later compiler (including beta and nightly)
#[const_fn("1.36")]
pub const fn version() {
/* ... */
}
// function is `const` on nightly compiler (including dev build)
#[const_fn(nightly)]
pub const fn nightly() {
/* ... */
}
// function is `const` if `cfg(...)` is true
#[const_fn(cfg(...))]
pub const fn cfg() {
/* ... */
}
// function is `const` if `cfg(feature = "...")` is true
#[const_fn(feature = "...")]
pub const fn feature() {
/* ... */
}
Improve compile time by removing proc-macro related dependencies (#18, #20).