Expand description
Implementation of the early lint pass.
The early lint pass works on AST nodes after macro expansion and name resolution, just before AST lowering. These lints are for purely syntactical lints.
Re-exportsยง
use rustc_ast::visit as ast_visit;๐use rustc_ast::visit::Visitor;๐use rustc_ast::visit::walk_list;๐use rustc_ast as ast;๐use rustc_ast::AttrVec;๐use rustc_ast::HasAttrs;๐use rustc_errors::BufferedEarlyLint;๐use rustc_errors::LintBuffer;๐use rustc_feature::Features;๐use rustc_lint_defs::LintPass;๐use rustc_middle::ty::RegisteredTools;๐use rustc_session::Session;๐use rustc_span::Ident;๐use rustc_span::Span;๐use tracing::debug;๐use crate::DiagAndSess;๐use crate::context::EarlyContext;๐use crate::context::EarlyLintPassFactory;๐use crate::context::LintContext;๐use crate::context::LintStore;๐use crate::passes::EarlyLintPass;๐use crate::passes::EarlyLintPassObject;๐
Modulesยง
- diagnostics ๐
Macrosยง
- impl_
early_ ๐lint_ pass - lint_
callback ๐
Structsยง
- Early
Context ๐AndPass - Implements the AST traversal for early lint passes.
Tprovides thecheck_*methods. - Runtime
Combined ๐Early Lint Pass
Enumsยง
- Early
Check Node - Early lints work on different nodes - either on the crate root, or on freshly loaded modules. This trait generalizes over those nodes.
Functionsยง
- check_
ast_ node - run_
pass ๐ - run_
passes ๐