Trait NoArgsAttributeParser

Source
pub(crate) trait NoArgsAttributeParser<S: Stage>: 'static {
    const PATH: &[Symbol];
    const ON_DUPLICATE: OnDuplicate<S>;
    const CREATE: fn(Span) -> AttributeKind;
}
Expand description

An even simpler version of SingleAttributeParser: now automatically check that there are no arguments provided to the attribute.

WithoutArgs<T> where T: NoArgsAttributeParser implements SingleAttributeParser.

Required Associated Constants§

Source

const PATH: &[Symbol]

Source

const ON_DUPLICATE: OnDuplicate<S>

Source

const CREATE: fn(Span) -> AttributeKind

Create the AttributeKind given attribute’s Span.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ColdParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::Cold as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for NoMangleParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::NoMangle as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for OmitGdbPrettyPrinterSectionParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind

Source§

impl<S: Stage> NoArgsAttributeParser<S> for TrackCallerParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::TrackCaller as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ExportStableParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind

Source§

impl<S: Stage> NoArgsAttributeParser<S> for FfiConstParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::FfiConst as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for FfiPureParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::FfiPure as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for StdInternalSymbolParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::StdInternalSymbol as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for AsPtrParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::AsPtr as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for AutomaticallyDerivedParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::AutomaticallyDerived as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for PassByValueParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::PassByValue as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for PubTransparentParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::PubTransparent as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ConstContinueParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::ConstContinue as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for LoopMatchParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::LoopMatch as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for NoImplicitPreludeParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::NoImplicitPrelude as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for NonExhaustiveParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::NonExhaustive as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for MayDangleParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(span: Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::MayDangle as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ConstStabilityIndirectParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Ignore

Source§

const CREATE: fn(Span) -> AttributeKind

Source§

impl<S: Stage> NoArgsAttributeParser<S> for AllowIncoherentImplParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::AllowIncoherentImpl as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for CoherenceIsCoreParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind

Source§

impl<S: Stage> NoArgsAttributeParser<S> for CoinductiveParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::Coinductive as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ConstTraitParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::ConstTrait as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for DenyExplicitImplParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::DenyExplicitImpl as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for DoNotImplementViaObjectParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::DoNotImplementViaObject as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for FundamentalParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind

Source§

impl<S: Stage> NoArgsAttributeParser<S> for MarkerParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Warn

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::Marker as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for ParenSugarParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::ParenSugar as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for PointeeParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::Pointee as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for SpecializationTraitParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::SpecializationTrait as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for TypeConstParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::TypeConst as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}

Source§

impl<S: Stage> NoArgsAttributeParser<S> for UnsafeSpecializationMarkerParser

Source§

const PATH: &[Symbol]

Source§

const ON_DUPLICATE: OnDuplicate<S> = OnDuplicate::Error

Source§

const CREATE: fn(Span) -> AttributeKind = {rustc_attr_data_structures::AttributeKind::UnsafeSpecializationMarker as fn(rustc_span::Span) -> rustc_attr_data_structures::AttributeKind}