This crate adds a .filter()
method to Option<T>
.
See the Rust RFCs issue for the motivation behind this crate.
To use it, add option-filter
to your Cargo.toml
:
toml
[dependencies]
option-filter = "1.0"
Then import the extension trait:
rust,ignore
extern crate option_filter;
use option_filter::OptionFilterExt;
Now you can filter your Option
s!
rust
let answer = Some(42);
assert_eq!(answer.filter(|x| *x == 42), Some(42));
assert_eq!(answer.filter(|x| *x == 43), None);