then

Crates.iothen
lib.rsthen
version0.1.0
sourcesrc
created_at2022-02-04 13:37:34.443242
updated_at2023-03-04 14:11:23.112689
descriptionbool::then functions but named properly
homepage
repositoryhttps://github.com/rossmacarthur/advent
max_upload_size
id526795
size17,196
Ross MacArthur (rossmacarthur)

documentation

README

then

Crates.io Version Docs.rs Latest Build Status

The standard library named bool::then_some and bool::then strangely. It should have been then and then_with. I find it annoying that expr.then(|| value) is shorter to type that the more “idiomatic” expr.then_some(value)

This crate provides these functions under the following names .some and .some_with.

Getting started

First, add the crate to your Cargo manifest.

cargo add then

Now bring the trait into scope.

use then::Some;

The .some and .some_with methods are now available on bool.

assert_eq!(false.some(0), None);
assert_eq!(true.some_with(Default::default), Some(0));

License

This project is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

Commit count: 386

cargo fmt