Skip to main content

AnalysisConfig

Struct AnalysisConfig 

Source
pub struct AnalysisConfig {
Show 22 fields pub enabled_languages: Vec<String>, pub extension_overrides: BTreeMap<String, String>, pub shebang_detection: bool, pub mixed_line_policy: MixedLinePolicy, pub python_docstrings_as_comments: bool, pub generated_file_detection: bool, pub minified_file_detection: bool, pub vendor_directory_detection: bool, pub include_lockfiles: bool, pub binary_file_behavior: BinaryFileBehavior, pub decode_failure_behavior: FailureBehavior, pub parse_failure_behavior: FailureBehavior, pub continuation_line_policy: ContinuationLinePolicy, pub blank_in_block_comment_policy: BlankInBlockCommentPolicy, pub count_compiler_directives: bool, pub budget: Option<BudgetConfig>, pub coverage_file: Option<PathBuf>, pub style_col_threshold: u16, pub style_analysis_enabled: bool, pub style_score_threshold: u8, pub style_lang_scope: String, pub activity_window_days: Option<u32>,
}

Fields§

§enabled_languages: Vec<String>§extension_overrides: BTreeMap<String, String>§shebang_detection: bool§mixed_line_policy: MixedLinePolicy§python_docstrings_as_comments: bool§generated_file_detection: bool§minified_file_detection: bool§vendor_directory_detection: bool§include_lockfiles: bool§binary_file_behavior: BinaryFileBehavior§decode_failure_behavior: FailureBehavior§parse_failure_behavior: FailureBehavior§continuation_line_policy: ContinuationLinePolicy

IEEE 1045-1992: how backslash line continuations (C macros, shell, Makefile) are counted.

§blank_in_block_comment_policy: BlankInBlockCommentPolicy

IEEE 1045-1992: whether blank lines inside block comments count as comment lines.

§count_compiler_directives: bool

IEEE 1045-1992 §4.2: when false, preprocessor/compiler directives (#include, #define, etc.) are excluded from code SLOC and tracked separately in compiler_directive_lines. Applies to C, C++, and Objective-C. Default: true (directives count toward code SLOC).

§budget: Option<BudgetConfig>

Optional SLOC budget thresholds. When set, --fail-on-budget exits non-zero if any threshold is exceeded. Configured under [analysis.budget] in the TOML.

§coverage_file: Option<PathBuf>

Path to a coverage report; format is auto-detected (LCOV .info from lcov/gcov/ cargo-llvm-cov, Cobertura XML, JaCoCo XML, coverage.py JSON, or Istanbul/NYC JSON). When set, oxide-sloc attaches per-file line/function/branch coverage to each FileRecord. Can also be set via the SLOC_COVERAGE_FILE environment variable.

§style_col_threshold: u16

Column-width threshold for style “N-col compliant” reporting (default 80). Supported values: 80, 100, 120 (others snap to the nearest bucket). Files where ≤ 5 % of lines exceed this limit count as compliant.

§style_analysis_enabled: bool

When false, skip all style-guide heuristic analysis entirely (faster on very large repos). Default: true.

§style_score_threshold: u8

Minimum dominant-guide adherence score (0–100) below which a file is flagged in the per-file style table. 0 = no threshold / all files shown without warning. Default: 0.

§style_lang_scope: String

Language scope for style analysis. “all” = every supported language family (default). "c_family" = C / C++ / Objective-C only (fast, backwards-compatible).

§activity_window_days: Option<u32>

Git activity window in days. On by default (90): oxide-sloc runs a single git log --since pass and attaches per-file commit-count + last-change date to each FileRecord, powering the hotspots view. Some(0) (or None) disables it; on a non-git path the single git log attempt fails gracefully and no hotspots are produced. This is distinct from the scan-to-scan “churn rate” shown in the web UI’s Compare page.

Trait Implementations§

Source§

impl Clone for AnalysisConfig

Source§

fn clone(&self) -> AnalysisConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for AnalysisConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for AnalysisConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for AnalysisConfig

Source§

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 Serialize for AnalysisConfig

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.