pub enum ConfigValueSource {
BuiltinDefault,
Manifest,
UserConfig,
WorkspaceConfig,
PackageConfig,
ExplicitConfig,
Env,
Cli,
}Expand description
Stable, ordered enum describing every layer Cabin’s effective configuration can come from.
The cli, env, and *-config variants are the only ones a
caller assigns directly today; manifest-derived values stay on
their dedicated tool/wrapper enums to preserve the existing
metadata shape.
Variants§
BuiltinDefault
Hard-coded in Cabin (e.g., the default dev profile).
Manifest
Declared in the package manifest (e.g.,
[profile.<name>]).
UserConfig
Declared in the user-level config file.
WorkspaceConfig
Declared in the workspace-level config file.
PackageConfig
Declared in the package-local config file (non-workspace projects).
ExplicitConfig
Declared in the file pointed at by CABIN_CONFIG.
Env
Provided through an environment variable (e.g., CC,
CABIN_COMPILER_WRAPPER).
Cli
Provided through a CLI flag (e.g., --profile,
--cxx).
Implementations§
Trait Implementations§
Source§impl Clone for ConfigValueSource
impl Clone for ConfigValueSource
Source§fn clone(&self) -> ConfigValueSource
fn clone(&self) -> ConfigValueSource
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ConfigValueSource
impl Debug for ConfigValueSource
Source§impl<'de> Deserialize<'de> for ConfigValueSource
impl<'de> Deserialize<'de> for ConfigValueSource
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for ConfigValueSource
impl Display for ConfigValueSource
Source§impl Hash for ConfigValueSource
impl Hash for ConfigValueSource
Source§impl PartialEq for ConfigValueSource
impl PartialEq for ConfigValueSource
Source§fn eq(&self, other: &ConfigValueSource) -> bool
fn eq(&self, other: &ConfigValueSource) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for ConfigValueSource
impl Serialize for ConfigValueSource
impl Copy for ConfigValueSource
impl Eq for ConfigValueSource
impl StructuralPartialEq for ConfigValueSource
Auto Trait Implementations§
impl Freeze for ConfigValueSource
impl RefUnwindSafe for ConfigValueSource
impl Send for ConfigValueSource
impl Sync for ConfigValueSource
impl Unpin for ConfigValueSource
impl UnsafeUnpin for ConfigValueSource
impl UnwindSafe for ConfigValueSource
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.