PrintAttribute

Trait PrintAttribute 

Source
pub trait PrintAttribute {
    // Required methods
    fn should_render(&self) -> bool;
    fn print_attribute(&self, p: &mut Printer);
}
Expand description

This trait is used to print attributes in rustc_hir_pretty.

For structs and enums it can be derived using rustc_macros::PrintAttribute. The output will look a lot like a Debug implementation, but fields of several types like Spans and empty tuples, are gracefully skipped so they don’t clutter the representation much.

Required Methods§

Source

fn should_render(&self) -> bool

Whether or not this will render as something meaningful, or if it’s skipped (which will force the containing struct to also skip printing a comma and the field name).

Source

fn print_attribute(&self, p: &mut Printer)

Implementations on Foreign Types§

Source§

impl PrintAttribute for CommentKind

Source§

impl PrintAttribute for DocFragmentKind

Source§

impl PrintAttribute for IntTy

Source§

impl PrintAttribute for UintTy

Source§

impl PrintAttribute for Transparency

Source§

impl PrintAttribute for bool

Source§

impl PrintAttribute for u16

Source§

impl PrintAttribute for u128

Source§

impl PrintAttribute for ()

Source§

impl PrintAttribute for Align

Source§

impl PrintAttribute for Span

Source§

impl PrintAttribute for ErrorGuaranteed

Source§

impl PrintAttribute for Ident

Source§

impl PrintAttribute for Symbol

Source§

impl PrintAttribute for NonZero<u32>

Source§

impl<A: PrintAttribute, B: PrintAttribute, C: PrintAttribute, D: PrintAttribute, E: PrintAttribute, F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (A, B, C, D, E, F, G, H)

Source§

impl<B: PrintAttribute, C: PrintAttribute, D: PrintAttribute, E: PrintAttribute, F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (B, C, D, E, F, G, H)

Source§

impl<C: PrintAttribute, D: PrintAttribute, E: PrintAttribute, F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (C, D, E, F, G, H)

Source§

impl<D: PrintAttribute, E: PrintAttribute, F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (D, E, F, G, H)

Source§

impl<E: PrintAttribute, F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (E, F, G, H)

Source§

impl<F: PrintAttribute, G: PrintAttribute, H: PrintAttribute> PrintAttribute for (F, G, H)

Source§

impl<G: PrintAttribute, H: PrintAttribute> PrintAttribute for (G, H)

Source§

impl<H: PrintAttribute> PrintAttribute for (H,)

Source§

impl<T: PrintAttribute> PrintAttribute for Option<T>

Source§

impl<T: PrintAttribute> PrintAttribute for &T

Source§

impl<T: PrintAttribute> PrintAttribute for ThinVec<T>

Source§

impl<T: PrintAttribute> PrintAttribute for FxIndexMap<T, Span>

Implementors§

Source§

impl PrintAttribute for StabilityLevel

Source§

impl PrintAttribute for StableSince

Source§

impl PrintAttribute for UnstableReason

Source§

impl PrintAttribute for AttrStyle

Source§

impl PrintAttribute for AttributeKind

Source§

impl PrintAttribute for CfgEntry

Source§

impl PrintAttribute for CoverageAttrKind

Source§

impl PrintAttribute for DebuggerVisualizerType

Source§

impl PrintAttribute for DeprecatedSince

Source§

impl PrintAttribute for DocInline

Source§

impl PrintAttribute for HideOrShow

Source§

impl PrintAttribute for InlineAttr

Source§

impl PrintAttribute for IntType

Source§

impl PrintAttribute for Linkage

Source§

impl PrintAttribute for MacroUseArgs

Source§

impl PrintAttribute for MirDialect

Source§

impl PrintAttribute for MirPhase

Source§

impl PrintAttribute for NativeLibKind

Source§

impl PrintAttribute for OptimizeAttr

Source§

impl PrintAttribute for PeImportNameType

Source§

impl PrintAttribute for ReprAttr

Source§

impl PrintAttribute for RtsanSetting

Source§

impl PrintAttribute for UsedBy

Source§

impl PrintAttribute for WindowsSubsystemKind

Source§

impl PrintAttribute for DefId

Source§

impl PrintAttribute for Limit

Source§

impl PrintAttribute for ConstStability

Source§

impl PrintAttribute for DefaultBodyStability

Source§

impl PrintAttribute for PartialConstStability

Source§

impl PrintAttribute for RustcVersion

Source§

impl PrintAttribute for Stability

Source§

impl PrintAttribute for CfgHideShow

Source§

impl PrintAttribute for CfgInfo

Source§

impl PrintAttribute for DebugVisualizer

Source§

impl PrintAttribute for Deprecation

Source§

impl PrintAttribute for DocAttribute

Source§

impl PrintAttribute for EiiDecl

Source§

impl PrintAttribute for EiiImpl

Source§

impl PrintAttribute for LinkEntry

Source§

impl PrintAttribute for SanitizerSet