| Crates.io | possibly |
| lib.rs | possibly |
| version | 1.0.0 |
| created_at | 2024-06-17 22:21:15.005194+00 |
| updated_at | 2024-06-17 22:21:15.005194+00 |
| description | Like matches!(), but returning an Option type. |
| homepage | |
| repository | https://github.com/Hakhenaton/main.git |
| max_upload_size | |
| id | 1274943 |
| size | 2,331 |
possiblyA single exported macro called possibly!(), which works std::matches!() but allowing to return a value when the values matches.
It can be useful if you want to use pattern matching without dealing with extra cases.
The result is wrapped inside an Option.
use possibly::possibly;
enum MyEnum {
Foo(u32),
Bar
}
let value = MyEnum::Foo(1);
// basic usage with simple match arm
assert_eq!(
possibly!(value, MyEnum::Foo(b) => b),
Some(1)
);
// with match arm condition
assert_eq!(
possibly!(value, MyEnum::Foo(b) if i > 5 => b),
None
);