| // aux-build:macro_rules.rs | |
| #![warn(clippy::mem_replace_with_default)] | |
| #[macro_use] | |
| extern crate macro_rules; | |
| macro_rules! take { | |
| ($s:expr) => { | |
| std::mem::replace($s, Default::default()) | |
| }; | |
| } | |
| fn replace_with_default() { | |
| let s = &mut String::from("foo"); | |
| take!(s); | |
| take_external!(s); | |
| } | |
| fn main() { | |
| replace_with_default(); | |
| } |