#language #conversion #automatic #implicit #boolean #values #typed

weak_true

类似于弱类型语言中自动隐式转换为布尔值

6 个版本

0.1.5 2024年6月2日
0.1.4 2024年5月27日

#852算法

Download history 315/week @ 2024-05-25 114/week @ 2024-06-01 7/week @ 2024-06-08 2/week @ 2024-06-15 9/week @ 2024-06-29 34/week @ 2024-07-06 46/week @ 2024-07-27

每月81 次下载

MIT 许可证

16KB
401

类似于弱类型语言中自动隐式转换为布尔值

类型 实现
浮点数 self 不是 0.0 / NaN
整数 self != 0
引用 / 智能指针 内部值实现
原始指针 !self.is_null
Option self.is_some
Result self.is_ok
Poll self.is_ready
str / slice / array !self.is_empty
集合 !self.is_empty
单元 false
bool self
fn / tuple / char true

示例

use weak_true::WeakTrue;

assert!("c".weak_true());
assert!('c'.weak_true());
assert!('\0'.weak_true());
assert!([0].weak_true());
assert!((&0 as *const i32).weak_true());
assert!(Some(0).weak_true());

assert!(f64::NAN.weak_false());
assert!(0.0.weak_false());
assert!(0.weak_false());
assert!("".weak_false());
assert!([0; 0].weak_false());

无运行时依赖