pub struct Config {
pub general: GeneralConfig,
pub filtering: FilteringConfig,
pub analysis: AnalysisConfig,
pub scoring: ScoringConfig,
pub performance: PerformanceConfig,
pub git: GitConfig,
pub features: FeatureFlags,
pub output: OutputConfig,
}Expand description
Main configuration structure for Scribe
Fields§
§general: GeneralConfigGeneral settings
filtering: FilteringConfigFile filtering configuration
analysis: AnalysisConfigAnalysis configuration
scoring: ScoringConfigScoring configuration
performance: PerformanceConfigPerformance and resource limits
git: GitConfigGit integration settings
features: FeatureFlagsFeature flags
output: OutputConfigOutput format configuration
Implementations§
Source§impl Config
impl Config
Sourcepub fn load_from_file<P>(path: P) -> Result<Config, ScribeError>
pub fn load_from_file<P>(path: P) -> Result<Config, ScribeError>
Load configuration from a file
Sourcepub fn save_to_file<P>(&self, path: P) -> Result<(), ScribeError>
pub fn save_to_file<P>(&self, path: P) -> Result<(), ScribeError>
Save configuration to a file
Sourcepub fn validate(&self) -> Result<(), ScribeError>
pub fn validate(&self) -> Result<(), ScribeError>
Validate the configuration
Sourcepub fn merge_with(self, other: Config) -> Config
pub fn merge_with(self, other: Config) -> Config
Merge with another configuration (other takes priority)
Sourcepub fn compute_hash(&self) -> String
pub fn compute_hash(&self) -> String
Create a configuration hash for cache invalidation This is now highly optimized using direct hashing instead of JSON serialization
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Config
impl<'de> Deserialize<'de> for Config
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Config, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Config, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for Config
impl Serialize for Config
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for Config
impl RefUnwindSafe for Config
impl Send for Config
impl Sync for Config
impl Unpin for Config
impl UnwindSafe for Config
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<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