sqc 0.4.13

Software Code Quality - CERT C compliance checker
Project Structure
=================

::

    src/
    +-- main.rs              # CLI entry point and argument parsing
    +-- prelude.rs           # Common imports and type definitions
    +-- analyze/             # Core analysis engine
    |   +-- mod.rs           # Project analysis orchestration
    |   +-- cfg.rs           # Control-flow graph construction
    |   +-- context.rs       # Cross-file project context
    |   +-- dataflow.rs      # Reaching definitions analysis
    |   +-- function_summary.rs  # Inter-procedural function summaries
    |   +-- null_state.rs    # CFG-based null state dataflow
    |   +-- prescan.rs       # Directory pre-scanning for cross-file context
    |   +-- suppression.rs   # Violation suppression system
    +-- export/              # Export functionality
    |   +-- mod.rs           # CSV, XLSX, JSON, and SARIF export
    +-- files/               # File and repository handling
    |   +-- mod.rs           # Git integration and file discovery
    +-- manifest/            # Rule configuration system
    |   +-- mod.rs           # TOML manifest parsing and validation
    +-- parser/              # C code parsing
    |   +-- mod.rs           # Tree-sitter C parser integration
    +-- progress.rs          # CLI progress reporting
    +-- rules/               # CERT C rule implementations
    |   +-- mod.rs           # Rule trait and registry
    |   +-- cert_c/          # Individual CERT C rule modules (17 categories)
    |       +-- API/         # API rules (9 rules)
    |       +-- ARR/         # Array rules (9 rules)
    |       +-- CON/         # Concurrency rules (23 rules)
    |       +-- DCL/         # Declaration rules (31 rules)
    |       +-- ENV/         # Environment rules (8 rules)
    |       +-- ERR/         # Error handling rules (11 rules)
    |       +-- EXP/         # Expression rules (31 rules)
    |       +-- FIO/         # I/O rules (35 rules)
    |       +-- FLP/         # Floating point rules (13 rules)
    |       +-- INT/         # Integer rules (23 rules)
    |       +-- MEM/         # Memory rules (17 rules)
    |       +-- MSC/         # Miscellaneous rules (10 rules)
    |       +-- POS/         # POSIX rules (20 rules)
    |       +-- PRE/         # Preprocessor rules (16 rules)
    |       +-- SIG/         # Signal rules (7 rules)
    |       +-- STR/         # String rules (16 rules)
    |       +-- WIN/         # Windows rules (6 rules)
    +-- ui/                  # Terminal user interface
    |   +-- mod.rs           # Ratatui-based interactive UI
    +-- utility/             # Helper functions
        +-- mod.rs           # Common utilities and helpers

    bench/                   # Benchmark infrastructure
    +-- runner.py            # Juliet benchmark runner
    +-- analyzer.py          # Result analysis and scoring
    +-- __main__.py          # Benchmark CLI (python -m bench)

    rules_templates/         # Rule manifests
    +-- rules-all.toml       # All 285 rules enabled
    +-- cwe/                 # Per-CWE manifests for Juliet benchmarking

    docs/                    # Documentation and CI examples
    +-- index.rst            # Master document (Sphinx toctree)
    +-- conf.py              # Sphinx configuration
    +-- azure-pipelines.yml  # Azure DevOps example pipeline

    .github/workflows/       # GitHub Actions
    +-- ci.yml               # CI: fmt, clippy, test, coverage, docs
    +-- release.yml          # Release automation