mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-21 22:34:05 +00:00
Docs for extension proc-macro
This commit is contained in:
parent
29f87ade9d
commit
62e7414a19
@ -41,6 +41,20 @@ pub fn symbols(input: TokenStream) -> TokenStream {
|
||||
symbols::symbols(input.into()).into()
|
||||
}
|
||||
|
||||
/// Derive an extension trait for a given impl block. The trait name
|
||||
/// goes into the parenthesized args of the macro, for greppability.
|
||||
/// For example:
|
||||
/// ```
|
||||
/// use rustc_macros::extension;
|
||||
/// #[extension(pub trait Foo)]
|
||||
/// impl i32 { fn hello() {} }
|
||||
/// ```
|
||||
///
|
||||
/// expands to:
|
||||
/// ```
|
||||
/// pub trait Foo { fn hello(); }
|
||||
/// impl Foo for i32 { fn hello() {} }
|
||||
/// ```
|
||||
#[proc_macro_attribute]
|
||||
pub fn extension(attr: TokenStream, input: TokenStream) -> TokenStream {
|
||||
extension::extension(attr, input)
|
||||
|
Loading…
Reference in New Issue
Block a user