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: ContinuationLinePolicyIEEE 1045-1992: how backslash line continuations (C macros, shell, Makefile) are counted.
blank_in_block_comment_policy: BlankInBlockCommentPolicyIEEE 1045-1992: whether blank lines inside block comments count as comment lines.
count_compiler_directives: boolIEEE 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: u16Column-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: boolWhen false, skip all style-guide heuristic analysis entirely (faster on very large repos). Default: true.
style_score_threshold: u8Minimum 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: StringLanguage 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
impl Clone for AnalysisConfig
Source§fn clone(&self) -> AnalysisConfig
fn clone(&self) -> AnalysisConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more