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;
13
14pub use crate::{
15    error::Error,
16    level::Level,
17    lint_rules::store::LintStore,
18    resources::Resources,
19    rule::LintRule,
20    scope::{LintScope, ScopedName},
21};
22
23/// Common imports that're required for most linting rule implementations.
24///
25/// This is a convenience prelude module as pretty much all of these imports are used in every
26/// single lint rule.
27#[allow(unused_imports)]
28mod internal_prelude {
29    pub use alpm_lint_config::{LintGroup, LintRuleConfiguration};
30
31    pub use crate::{
32        Error,
33        issue::LintIssue,
34        level::Level,
35        resources::Resources,
36        rule::LintRule,
37        scope::LintScope,
38    };
39}
40/// Convenience re-export of [`alpm_lint_config`] types.
41pub mod config {
42    pub use alpm_lint_config::{
43        LintConfiguration,
44        LintGroup,
45        LintRuleConfiguration,
46        LintRuleConfigurationOption,
47    };
48}