2 个版本
使用旧的 Rust 2015
0.0.2 | 2015 年 1 月 1 日 |
---|---|
0.0.1 | 2014 年 12 月 29 日 |
2883 在 Rust 模式
11KB
306 行
type-nats.rs
Rust 中的类型级别自然数
概要
这个库使用特性和关联类型实现了类型级别的自然数。目前,它更多的是作为一个演示。
示例
fn example() {
let _: SNat< S<S<S<S<S<Z>>>>> > = Add::< S<S<S<Z>>> , S<S<Z>> >::query();
let _: SNat< N06 > = Mul::< N03 , N02 >::query();
let _: SNat< N08 > = Exp::< N03 , N02 >::query();
let _: SNat< N24 > = Fac::< N04 >::query();
assert_eq!(Add::< N03 , N02 >::to_uint(), 5u);
assert_eq!(Mul::< N03 , N02 >::to_uint(), 6u);
assert_eq!(Exp::< N03 , N02 >::to_uint(), 8u);
assert_eq!(Fac::< N04 >::to_uint(), 24u);
}
文档
请参阅[API 文档](http://darinmorrison.github.io/type-nats.rs/doc/type-nats/)。
要求
您可以使用以下命令安装它们:
$ curl -s https://static.rust-lang.org/rustup.sh | sudo sh
有关安装 Rust 的详细信息,请参阅安装 Rust。
用法
$ cargo build ## build library and binary
$ cargo test ## run tests in ./tests
$ cargo bench ## run benchmarks in ./benches