marque_engine/lib.rs
1//! marque-engine — pipeline orchestration.
2//!
3//! Wires together: scanner → parser → validator → fixer → output.
4//! The pipeline is a chain of async streams; each stage is a `Stream` impl.
5//! CLI, WASM, and server are different Source/Sink configurations wired to the same middle.
6
7#[cfg(feature = "batch")]
8pub mod batch;
9pub mod clock;
10pub mod engine;
11pub mod output;
12pub mod pipeline;
13
14#[cfg(feature = "batch")]
15pub use batch::{BatchEngine, BatchError, BatchOptions};
16pub use clock::{Clock, FixedClock, SystemClock};
17pub use engine::{Engine, FixMode, InvalidThreshold};
18pub use output::{FixResult, LintResult};
19
20/// Returns the default rule set for marque (CAPCO rules).
21///
22/// Both the CLI and WASM front ends use this to share one registration entry point.
23pub fn default_ruleset() -> Vec<Box<dyn marque_rules::RuleSet>> {
24 vec![Box::new(marque_capco::rules::CapcoRuleSet::new())]
25}