#ergonomics #wrapper #error #values #quick

tarde

tarde - 时间和 Rust 时间跨度易用性,快速初始化 std::time::Duration 值的简便方法

4 个版本

0.2.0 2019年9月11日
0.1.2 2019年9月10日
0.1.1 2019年9月10日
0.1.0 2019年9月10日

#23 in #ergonomics

自定义许可

13KB
271 代码行

tarde

license Crates.io

Linux: 构建状态

Windows: 构建状态

tarde (tar-dee,时间和 Rust 时间跨度易用性) 是一个小型库,允许在使用 std::time::Duration 时具有更好的易用性。

示例

use std::time::Instant;
use tarde::{During, Error};

fn main() -> Result<(), tarde::Error> {
    let now = time::Instant::now();
    thread::sleep(10.millis()?); 

    Ok(assert!(now.elapsed() >= 10.millis()?))
}

lib.rs:

tarde (tar-dee,时间与 Rust 时间跨度易用性) 是一个简单的包装器,用于 '{integer}' 类型,它改善了围绕 std::time::Duration 的易用性

示例

use std::time::{Instant, Duration};
use std::thread;
use tarde::*;

// Before:
fn std_way() {
    let x: u64 = 10;
    let now = Instant::now();
    thread::sleep(Duration::from_millis(2569));

    assert!(now.elapsed() >= Duration::from_millis(x));
}

// After:
fn main() -> Result<(), Error> {
   let x = 10;
   let now = Instant::now();
   thread::sleep(x.millis()?); 

   Ok(assert!(now.elapsed() >= x.millis()?))
}

依赖

~2MB
~48K SLoC