Filter the value using the predicate.
predicate
@override Maybe<T> where(bool Function(T value) predicate) => predicate(value) ? this : Nothing();