Trait InvalidationReason 
Source pub trait InvalidationReason:
    DynEq
    + DynHash
    + Display
    + Send
    + Sync
    + 'static {
    // Provided method
    fn kind(&self) -> Option<StaticOrArc<dyn InvalidationReasonKind>> { ... }
}
Expand description
A user-facing reason why a task was invalidated. This should only be used
for invalidation that were triggered by the user.
Reasons are deduplicated, so this need to implement Eq and Hash
Tests for self and other values to be equal, and is used by ==.
Tests for !=. The default implementation is almost always sufficient,
and should not be overridden without very good reason.