pub struct SettingKey {
pub key: &'static str,
pub default: Option<&'static str>,
pub kind: ValueKind,
}Expand description
One entry of the canonical setting registry.
Carrying the default alongside the key is what lets config doctor derive
its whole listing from SETTING_KEYS instead of repeating a hand-written
table. GAP-SG-85 was exactly that divergence: a 14-entry manual list next
to a 44-key registry, missing the one key that redirects the database.
Fields§
§key: &'static strDotted key accepted by config set.
default: Option<&'static str>Literal default applied when neither a CLI flag nor the XDG config supplies a value.
None marks a default that cannot be a static string because it is
derived from the host at runtime — an XDG directory, the CPU count, or
a probe. config doctor reports those as derived rather than
inventing a number that would not match what the process actually uses.
kind: ValueKindDomain the stored value must belong to, enforced by set_setting.
GAP-SG-201: the registry validated the KEY and never the VALUE, so
config set embedding.dim nao-numero reported success and the defect
surfaced on the next invocation, far from its cause. display.tz 0 was
the worst case — it bricked the whole binary (GAP-SG-200).
Auto Trait Implementations§
impl Freeze for SettingKey
impl RefUnwindSafe for SettingKey
impl Send for SettingKey
impl Sync for SettingKey
impl Unpin for SettingKey
impl UnsafeUnpin for SettingKey
impl UnwindSafe for SettingKey
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
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more