3 个版本
使用旧的 Rust 2015
0.0.3 | 2017年12月2日 |
---|---|
0.0.2 | 2017年11月26日 |
0.0.1 | 2017年11月26日 |
#203 in 财务
13KB
324 行
greenback
用于安全处理美元整数值的库
安装
编辑 Cargo.toml
[dependencies]
greenback="0.0.3"
使用
extern crate greenback;
use greenback::Greenback;
fn main() {
// regular arithmetic operations
let unit_price = Greenback::new(10, 99); // $10.99
let quantity = 10;
let coupon = Greenback::new(2, 0); // $2.00 off
let total_cost = unit_price * quantity - coupon;
println!("Total cost: {}", total_cost);
// summation example
let foo = Greenback::from_float(1.23); // $1.23
let bar = Greenback::from_cents(4_56); // $4.56
let baz = Greenback::new(3, 50); // $3.50
let sum: Greenback = vec![foo, bar, baz].into_iter().sum();
if sum > Greenback::zero() {
println!("sum: {}", sum);
}
}
输出
Total cost: $107.90
sum: $9.29
状态
这是我第一个 Rust 包,我还在学习 Rust,所以用户请注意!
欢迎拉取请求和问题。
实现了所有基本算术运算(加、乘加、减、乘减等),以及排序和求和。还有一个默认格式化程序,可以像 $1,234.56
那样打印您的货币值。没有溢出检测,并且对 Mul 和 Div 特性的支持有限。我需要找出如何正确使用泛型来执行这些操作。