2 releases
Uses old Rust 2015
0.1.1 | Nov 18, 2016 |
---|---|
0.1.0 | Nov 18, 2016 |
#20 in #bool
1,075 downloads per month
Used in 3 crates
(2 directly)
8KB
185 lines
LenientBool
This crate provides the LenientBool type, which converts the following values into a boolean:
- true
- false
- t
- f
- 0
- 1
Comparisons are case-insensitive, so TRUE
, tRue
, and T
all work, for example.
License
Licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
lib.rs
:
This module provides a single type, LenientBool
, which implements FromStr
to convert
a string into a boolean. It is more accepting of various boolean representations than
the standard bool function, performing case-insensitive matches
against true
, false
, t
, and f
, yes
, no
, y
, n
, 0
, and 1
.
Errors
Any string not matching the above list will return a LenientBoolError
.
Examples
extern crate lenient_bool;
use lenient_bool::LenientBool;
fn main() {
let b : bool = "1".parse::<LenientBool>().unwrap().into();
assert_eq!(b, true);
}