alpm_lint/
lib.rs

1#![doc = include_str!("../README.md")]
2
3#[cfg(feature = "cli")]
4#[doc(hidden)]
5pub mod cli;
6mod error;
7pub mod issue;
8mod level;
9pub mod lint_rules;
10mod resources;
11mod rule;
12mod scope;
13mod utils;
14
15pub use crate::{
16    error::Error,
17    level::Level,
18    lint_rules::store::LintStore,
19    resources::Resources,
20    rule::LintRule,
21    scope::{LintScope, ScopedName},
22};
23
24/// Common imports that're required for most linting rule implementations.
25///
26/// This is a convenience prelude module as pretty much all of these imports are used in every
27/// single lint rule.
28#[allow(unused_imports)]
29mod internal_prelude {
30    pub use alpm_lint_config::{LintGroup, LintRuleConfiguration};
31
32    pub use crate::{
33        Error,
34        issue::LintIssue,
35        level::Level,
36        resources::Resources,
37        rule::LintRule,
38        scope::LintScope,
39    };
40}
41/// Convenience re-export of [`alpm_lint_config`] types.
42pub mod config {
43    pub use alpm_lint_config::{
44        LintConfiguration,
45        LintGroup,
46        LintRuleConfiguration,
47        LintRuleConfigurationOption,
48    };
49}