pub trait FilterStack<T>: Contains<T> {
    type Stack;

    fn push(constraint: impl Fn(&T) -> bool + 'static);
    fn pop();
    fn take() -> Self::Stack;
    fn restore(taken: Self::Stack);
Expand description

Trait to add a constraint onto the filter.

Required Associated Types

The type used to archive the stack.

Required Methods

Add a new constraint onto the filter.

Removes the most recently pushed, and not-yet-popped, constraint from the filter.

Clear the filter, returning a value that may be used later to restore it.

Restore the filter from a previous take operation.