blob: 712c492cff6e1bb13166918de99302dc0e91b0e8 [file] [log] [blame]
#[cfg(feature = "bytes")]
use bytes::Bytes;
/// anything that can be cleared
pub trait Clear {
/// Clear this make, make it equivalent to newly created object.
fn clear(&mut self);
}
impl<T> Clear for Option<T> {
fn clear(&mut self) {
self.take();
}
}
impl Clear for String {
fn clear(&mut self) {
String::clear(self);
}
}
impl<T> Clear for Vec<T> {
fn clear(&mut self) {
Vec::clear(self);
}
}
#[cfg(feature = "bytes")]
impl Clear for Bytes {
fn clear(&mut self) {
Bytes::clear(self);
}
}