diff options
| author | 魏曹先生 <1992414357@qq.com> | 2026-05-08 14:49:25 +0800 |
|---|---|---|
| committer | 魏曹先生 <1992414357@qq.com> | 2026-05-08 14:51:04 +0800 |
| commit | d895af6e53eb4a18554b3174f819eb771e81ca05 (patch) | |
| tree | 9a642621477e1520e8b8a37959c0e0f79acb4223 /mingling/src | |
| parent | 2d1157ae0fc1c2bc3ad6ec20e64e2f8e8757524b (diff) | |
Expose compile-time feature flags as public constants
Diffstat (limited to 'mingling/src')
| -rw-r--r-- | mingling/src/features.rs | 53 | ||||
| -rw-r--r-- | mingling/src/lib.rs | 30 |
2 files changed, 83 insertions, 0 deletions
diff --git a/mingling/src/features.rs b/mingling/src/features.rs new file mode 100644 index 0000000..d75f926 --- /dev/null +++ b/mingling/src/features.rs @@ -0,0 +1,53 @@ +#[cfg(not(feature = "nightly"))] +pub const MINGLING_NIGHTLY: bool = false; + +#[cfg(feature = "nightly")] +pub const MINGLING_NIGHTLY: bool = true; + +#[cfg(not(feature = "debug"))] +pub const MINGLING_DEBUG: bool = false; + +#[cfg(feature = "debug")] +pub const MINGLING_DEBUG: bool = true; + +#[cfg(not(feature = "async"))] +pub const MINGLING_ASYNC: bool = false; + +#[cfg(feature = "async")] +pub const MINGLING_ASYNC: bool = true; + +#[cfg(not(feature = "clap"))] +pub const MINGLING_CLAP: bool = false; + +#[cfg(feature = "clap")] +pub const MINGLING_CLAP: bool = true; + +#[cfg(not(feature = "dispatch_tree"))] +pub const MINGLING_DISPATCH_TREE: bool = false; + +#[cfg(feature = "dispatch_tree")] +pub const MINGLING_DISPATCH_TREE: bool = true; + +#[cfg(not(feature = "general_renderer"))] +pub const MINGLING_GENERAL_RENDERER: bool = false; + +#[cfg(feature = "general_renderer")] +pub const MINGLING_GENERAL_RENDERER: bool = true; + +#[cfg(not(feature = "repl"))] +pub const MINGLING_REPL: bool = false; + +#[cfg(feature = "repl")] +pub const MINGLING_REPL: bool = true; + +#[cfg(not(feature = "comp"))] +pub const MINGLING_COMP: bool = false; + +#[cfg(feature = "comp")] +pub const MINGLING_COMP: bool = true; + +#[cfg(not(feature = "parser"))] +pub const MINGLING_PARSER: bool = false; + +#[cfg(feature = "parser")] +pub const MINGLING_PARSER: bool = true; diff --git a/mingling/src/lib.rs b/mingling/src/lib.rs index f366296..21a848d 100644 --- a/mingling/src/lib.rs +++ b/mingling/src/lib.rs @@ -137,3 +137,33 @@ pub use mingling_macros::Groupped; pub mod _mingling_examples { pub use crate::example_docs::*; } + +mod features; +pub mod feature { + /// Whether the `async` feature is enabled + pub use crate::features::MINGLING_ASYNC; + + /// Whether the `clap` feature is enabled + pub use crate::features::MINGLING_CLAP; + + /// Whether the `comp` feature is enabled + pub use crate::features::MINGLING_COMP; + + /// Whether the `debug` feature is enabled + pub use crate::features::MINGLING_DEBUG; + + /// Whether the `dispatch_tree` feature is enabled + pub use crate::features::MINGLING_DISPATCH_TREE; + + /// Whether the `general_renderer` feature is enabled + pub use crate::features::MINGLING_GENERAL_RENDERER; + + /// Whether the `nightly` feature is enabled + pub use crate::features::MINGLING_NIGHTLY; + + /// Whether the `parser` feature is enabled + pub use crate::features::MINGLING_PARSER; + + /// Whether the `repl` feature is enabled + pub use crate::features::MINGLING_REPL; +} |
