1//! Traits to handle invalidations. 2 3/// Something which can be invalidated. 4pub trait Invalidatable<M> { 5 fn invalidated_by(&self, _mutation: &M) -> bool { 6 true 7 } 8} 9 10/// Something which produces invalidations. 11pub trait Invalidator<M> { 12 fn mutations(&self) -> Vec<M>; 13}