3 个版本
使用旧的 Rust 2015
0.1.3 | 2015 年 12 月 18 日 |
---|---|
0.1.2 | 2015 年 12 月 18 日 |
0.1.0 | 2015 年 12 月 18 日 |
#5 在 #unknown
46 每月下载次数
6KB
80 行
Kleene 逻辑在 Rust 类型系统内
值是 True
、False
和 Unknown
。操作有 Not
、BitAnd
和 BitOr
,它们来自 std::ops
。还有一个 Ternary
枚举,它在运行时表示值,以及一个 ToTernary
特性,它为我们的值类型添加了 to_ternary()
方法。
更多信息请参阅 API 文档
示例
Same
和 Not
use ternary::{True, False, Unknown, Same};
use std::ops::Not;
type NotTrue = <<True as Not>::Output as Same<False>>::Output;
type NotFalse = <<False as Not>::Output as Same<True>>::Output;
type NotUnknown = <<Unknown as Not>::Output as Same<Unknown>>::Output;
将值转换为运行时,BitAnd
和 BitOr
assert_eq!(Ternary::T, <True as BitOr<<Unknown as
BitAnd<False>>::Output>>::Output::to_ternary());
要使用它,请将 ternary = "0.1.0"
添加到您的依赖项中。