Skip to main content

Module interface

Module interface 

Source
Expand description

API for other crates to parse attributes themselves.

Re-exportsยง

use std::convert::identity; ๐Ÿ”’
use std::sync::atomic::AtomicBool; ๐Ÿ”’
use std::sync::atomic::Ordering; ๐Ÿ”’
use rustc_ast as ast; ๐Ÿ”’
use rustc_ast::token::DocFragmentKind; ๐Ÿ”’
use rustc_ast::AttrStyle; ๐Ÿ”’
use rustc_ast::CRATE_NODE_ID; ๐Ÿ”’
use rustc_ast::NodeId; ๐Ÿ”’
use rustc_ast::Safety; ๐Ÿ”’
use rustc_attr_ir::target::AstTarget; ๐Ÿ”’
use rustc_attr_ir::target::Target; ๐Ÿ”’
use rustc_attr_ir::AttrArgs; ๐Ÿ”’
use rustc_attr_ir::AttrItem; ๐Ÿ”’
use rustc_attr_ir::AttrPath; ๐Ÿ”’
use rustc_attr_ir::Attribute; ๐Ÿ”’
use rustc_attr_ir::AttributeKind; ๐Ÿ”’
use rustc_attr_ir::HashIgnoredAttrId; ๐Ÿ”’
use rustc_data_structures::sync::DynSend; ๐Ÿ”’
use rustc_data_structures::sync::DynSync; ๐Ÿ”’
use rustc_errors::Diag; ๐Ÿ”’
use rustc_errors::DiagCtxtHandle; ๐Ÿ”’
use rustc_errors::Diagnostic; ๐Ÿ”’
use rustc_errors::Level; ๐Ÿ”’
use rustc_errors::MultiSpan; ๐Ÿ”’
use rustc_feature::BUILTIN_ATTRIBUTE_SET; ๐Ÿ”’
use rustc_feature::Features; ๐Ÿ”’
use rustc_lint_defs::LintId; ๐Ÿ”’
use rustc_lint_defs::RegisteredTools; ๐Ÿ”’
use rustc_session::Session; ๐Ÿ”’
use rustc_span::DUMMY_SP; ๐Ÿ”’
use rustc_span::ErrorGuaranteed; ๐Ÿ”’
use rustc_span::Span; ๐Ÿ”’
use rustc_span::Symbol; ๐Ÿ”’
use rustc_span::sym; ๐Ÿ”’
use crate::attributes::AttributeSafety; ๐Ÿ”’
use crate::context::ATTRIBUTE_PARSERS; ๐Ÿ”’
use crate::context::AcceptContext; ๐Ÿ”’
use crate::context::FinalizeCheckContext; ๐Ÿ”’
use crate::context::FinalizeCheckFn; ๐Ÿ”’
use crate::context::FinalizeContext; ๐Ÿ”’
use crate::context::FinalizeFn; ๐Ÿ”’
use crate::context::FinalizeOutput; ๐Ÿ”’
use crate::context::SharedContext; ๐Ÿ”’
use crate::diagnostics::ParsedDescription; ๐Ÿ”’
use crate::generated::GeneratedAttrState; ๐Ÿ”’
use crate::parser::AllowExprMetavar; ๐Ÿ”’
use crate::parser::ArgParser; ๐Ÿ”’
use crate::parser::PathParser; ๐Ÿ”’
use crate::parser::RefPathParser; ๐Ÿ”’
use crate::synthetic::SyntheticAttrState; ๐Ÿ”’
use crate::AttributeTemplate; ๐Ÿ”’
use crate::ShouldEmit; ๐Ÿ”’

Structsยง

AttributeParser
Context created once, for example as part of the ast lowering context, through which all attributes can be lowered.
EmitAttribute