1#![doc = include_str!("../README.md")]
2#![feature(let_chains)]
3
4mod diag_msg_uppercase_start;
5mod not_using_has_span_trait;
6
7use marker_api::{prelude::*, LintPass, LintPassInfo, LintPassInfoBuilder};
8
9#[derive(Debug, Default)]
10struct MarkerLintsLintPass;
11
12marker_api::export_lint_pass!(MarkerLintsLintPass);
13
14impl LintPass for MarkerLintsLintPass {
15 fn info(&self) -> LintPassInfo {
16 let lints = [
17 diag_msg_uppercase_start::DIAG_MSG_UPPERCASE_START,
18 not_using_has_span_trait::NOT_USING_HAS_SPAN_TRAIT,
19 ];
20
21 LintPassInfoBuilder::new(Box::new(lints)).build()
22 }
23
24 fn check_expr<'ast>(&mut self, cx: &MarkerContext<'ast>, expr: ExprKind<'ast>) {
25 diag_msg_uppercase_start::check_expr(cx, expr);
26 }
27
28 fn check_item<'ast>(&mut self, cx: &'ast MarkerContext<'ast>, item: ast::ItemKind<'ast>) {
29 not_using_has_span_trait::check_item(cx, item);
30 }
31}