pub struct PawConfig {
pub default_cli: Option<String>,
pub default_spec_cli: Option<String>,
pub branch_prefix: Option<String>,
pub mouse: Option<bool>,
pub clis: HashMap<String, CustomCli>,
pub presets: HashMap<String, Preset>,
pub specs: Option<SpecsConfig>,
pub logging: Option<LoggingConfig>,
pub broker: BrokerConfig,
}Expand description
Top-level git-paw configuration.
All fields are optional — absent config files produce empty defaults.
Fields§
§default_cli: Option<String>Default CLI to use when none is specified.
default_spec_cli: Option<String>Default CLI for --from-specs (bypasses picker when set).
branch_prefix: Option<String>Prefix for spec-derived branch names (default: "spec/").
mouse: Option<bool>Whether to enable tmux mouse mode for sessions.
clis: HashMap<String, CustomCli>Custom CLI definitions keyed by name.
presets: HashMap<String, Preset>Named presets keyed by name.
specs: Option<SpecsConfig>Spec scanning configuration.
logging: Option<LoggingConfig>Session logging configuration.
broker: BrokerConfigHTTP broker configuration.
Implementations§
Source§impl PawConfig
impl PawConfig
Sourcepub fn merged_with(&self, overlay: &Self) -> Self
pub fn merged_with(&self, overlay: &Self) -> Self
Returns a new config that merges overlay on top of self.
Scalar fields from overlay take precedence when present.
Map fields are merged with overlay entries winning on key collisions.
Sourcepub fn get_preset(&self, name: &str) -> Option<&Preset>
pub fn get_preset(&self, name: &str) -> Option<&Preset>
Returns a preset by name, if it exists.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PawConfig
impl<'de> Deserialize<'de> for PawConfig
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
impl Eq for PawConfig
impl StructuralPartialEq for PawConfig
Auto Trait Implementations§
impl Freeze for PawConfig
impl RefUnwindSafe for PawConfig
impl Send for PawConfig
impl Sync for PawConfig
impl Unpin for PawConfig
impl UnsafeUnpin for PawConfig
impl UnwindSafe for PawConfig
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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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>
Converts
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>
Converts
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