Module core::macros::builtin

source ·
Expand description

Definitions of built-in macros.

Most of the macro properties (stability, visibility, etc.) are taken from the source code here, with exception of expansion functions transforming macro inputs into outputs, those functions are provided by the compiler.

Macros

  • type_ascribeExperimental
    Unstable placeholder for type ascription.

Attribute Macros

  • Attribute macro applied to a function to register it as a handler for allocation failure.
  • benchExperimental
    Attribute macro applied to a function to turn it into a benchmark test.
  • cfg_accessibleExperimental
    Keeps the item it’s applied to if the passed path is accessible, and removes it otherwise.
  • cfg_evalExperimental
    Expands all #[cfg] and #[cfg_attr] attributes in the code fragment it’s applied to.
  • derive_constExperimental
    Attribute macro used to apply derive macros for implementing traits in a const context.
  • test_caseExperimental
    An implementation detail of the #[test] and #[bench] macros.
  • Attribute macro used to apply derive macros.
  • Attribute macro applied to a static to register it as a global allocator.
  • Attribute macro applied to a function to turn it into a unit test.

Derive Macros

  • RustcDecodableDeprecated
    Unstable implementation detail of the rustc compiler, do not use.
  • RustcEncodableDeprecated
    Unstable implementation detail of the rustc compiler, do not use.