diff options
| author | Danilo Bargen <mail@dbrgn.ch> | 2017-09-30 11:50:32 +0200 |
|---|---|---|
| committer | Danilo Bargen <mail@dbrgn.ch> | 2017-09-30 15:27:42 +0200 |
| commit | eb59952fbdb217101834325fa7e08074b735a3e0 (patch) | |
| tree | 4beabbcf8bd01fcf8743dd6ba9f0f2b1c5b74907 /src/doc | |
| parent | b7041bfab3a83702a8026fb7a18d8ea7d54cc648 (diff) | |
| download | rust-eb59952fbdb217101834325fa7e08074b735a3e0.tar.gz rust-eb59952fbdb217101834325fa7e08074b735a3e0.zip | |
Docs: Add trace_macros! to unstable book
Diffstat (limited to 'src/doc')
| -rw-r--r-- | src/doc/unstable-book/src/language-features/trace-macros.md | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/doc/unstable-book/src/language-features/trace-macros.md b/src/doc/unstable-book/src/language-features/trace-macros.md new file mode 100644 index 00000000000..41aa286e69b --- /dev/null +++ b/src/doc/unstable-book/src/language-features/trace-macros.md @@ -0,0 +1,39 @@ +# `trace_macros` + +The tracking issue for this feature is [#29598]. + +[#29598]: https://github.com/rust-lang/rust/issues/29598 + +------------------------ + +With `trace_macros` you can trace the expansion of macros in your code. + +## Examples + +```rust +#![feature(trace_macros)] + +fn main() { + trace_macros!(true); + println!("Hello, Rust!"); + trace_macros!(false); +} +``` + +The `cargo build` output: + +```txt +note: trace_macro + --> src/main.rs:5:5 + | +5 | println!("Hello, Rust!"); + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + | + = note: expanding `println! { "Hello, Rust!" }` + = note: to `print ! ( concat ! ( "Hello, Rust!" , "\n" ) )` + = note: expanding `print! { concat ! ( "Hello, Rust!" , "\n" ) }` + = note: to `$crate :: io :: _print ( format_args ! ( concat ! ( "Hello, Rust!" , "\n" ) ) + )` + + Finished dev [unoptimized + debuginfo] target(s) in 0.60 secs +``` |
