From 6fb5b73cf4dcf69e72ae414e83c53fe5eb8f0ffe Mon Sep 17 00:00:00 2001 From: Clar Fon Date: Tue, 22 Jan 2019 17:51:33 -0500 Subject: dbg!() without parameters. --- src/libstd/macros.rs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/libstd') diff --git a/src/libstd/macros.rs b/src/libstd/macros.rs index b87257188df..cfb8336e540 100644 --- a/src/libstd/macros.rs +++ b/src/libstd/macros.rs @@ -305,10 +305,16 @@ macro_rules! eprintln { /// let _ = dbg!(a); // <-- `a` is moved again; error! /// ``` /// +/// You can also use `dbg!()` without a value to just print the +/// file and line whenever it's reached. +/// /// [stderr]: https://en.wikipedia.org/wiki/Standard_streams#Standard_error_(stderr) #[macro_export] #[stable(feature = "dbg_macro", since = "1.32.0")] macro_rules! dbg { + () => { + eprintln!("[{}:{}]", file!(), line!()); + }; ($val:expr) => { // Use of `match` here is intentional because it affects the lifetimes // of temporaries - https://stackoverflow.com/a/48732525/1063961 -- cgit 1.4.1-3-g733a5