Infinite-Storage-Glitch/src/timer.rs
2023-02-15 10:30:45 -08:00

31 lines
650 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, micros);
} else {
println!("{} ended in {}ms", self.title, millis);
}
}
}
impl Timer {
pub fn new(title: &'static str) -> Timer {
let start = Instant::now();
Timer {
title,
time: start,
}
}
}