Infinite-Storage-Glitch/src/timer.rs
2023-02-10 20:42:02 -08:00

31 lines
700 B
Rust

use std::time::{self, Duration};
use std::time::Instant;
pub struct Timer {
title: &'static str,
time: Instant,
}
impl Drop for Timer {
fn drop(&mut self) {
let micros = self.time.elapsed().as_micros();
let millis = self.time.elapsed().as_millis();
if micros < 10000 {
println!("{} ended in {}us", self.title, self.time.elapsed().as_micros());
} else {
println!("{} ended in {}ms", self.title, self.time.elapsed().as_millis());
}
}
}
impl Timer {
pub fn new(title: &'static str) -> Timer {
let start = Instant::now();
Timer {
title,
time: start,
}
}
}