#power #numbers #integer #power-of-two

binexp

表示二进制指数的 struct

2 个版本

0.1.1 2023年7月24日
0.1.0 2023年7月18日

#54#power

MIT 许可协议

11KB
200 代码行,不包括注释

binexp

CI crates

binexp 提供了一个 PowerOfTwo struct,你可以从任何有效的二进制指数整数创建它。
你可以使用 PowerOfTwo 作为在代码中表示二进制指数的一种安全方式。

示例

use std::convert::TryFrom;
use binexp::PowerOfTwo;

assert!(PowerOfTwo::try_from(1).is_ok());
assert!(PowerOfTwo::try_from(2).is_ok());
assert!(PowerOfTwo::try_from(3).is_err());

let four = PowerOfTwo::try_from(4).unwrap();
assert_eq!(four.to_string(), "2^2 (4)");

let eight: PowerOfTwo = 8i8.try_into().unwrap();
assert_eq!(eight.to_string(), "2^3 (8)");

许可协议

本项目采用 MIT 许可协议


lib.rs:

用于处理二进制指数数的库。使用 PowerOfTwo struct 可以在验证目的时很有用,当你想确保一个数是二进制指数时。 PowerOfTwo 实现了所有整数类型的 TryFrom,因此你可以将任何整数转换为 PowerOfTwo 实例。


示例

use std::convert::TryFrom;
use binexp::PowerOfTwo;

assert!(PowerOfTwo::try_from(1).is_ok());
assert!(PowerOfTwo::try_from(2).is_ok());
assert!(PowerOfTwo::try_from(3).is_err());

let four = PowerOfTwo::try_from(4).unwrap();
assert_eq!(four.to_string(), "2^2 (4)");

let eigth: PowerOfTwo = 8i8.try_into().unwrap();
assert_eq!(eigth.to_string(), "2^3 (8)");

依赖关系

~255–710KB
~17K SLoC