In several modules, we are resetting structures to their default values using std::mem::replace(&mut var, Default::default()). While this works, it is less idiomatic and more verbose than necessary.
Describe the solution you'd like
Replace these occurrences with std::mem::take(&mut var), which is the standard and more concise way to achieve the exact same behavior for types that implement Default.
Example
// Before
let old_value = std::mem::replace(&mut self.buffer, Vec::new());
// After
let old_value = std::mem::take(&mut self.buffer);
This change improves code readability and aligns with Rust best practices (clippy lint: mem_replace_with_default).
In several modules, we are resetting structures to their default values using
std::mem::replace(&mut var, Default::default()). While this works, it is less idiomatic and more verbose than necessary.Describe the solution you'd like
Replace these occurrences with
std::mem::take(&mut var), which is the standard and more concise way to achieve the exact same behavior for types that implement Default.Example
This change improves code readability and aligns with Rust best practices (clippy lint:
mem_replace_with_default).