From 10ca3474e67d53d3d1ec306dd2973d95043ba666 Mon Sep 17 00:00:00 2001 From: Sébastien Crozet Date: Tue, 31 May 2022 11:49:36 +0200 Subject: Make the`instant` dependency optional, behind a `profiler` cargo feature --- src/counters/timer.rs | 22 ++++++++++++++++------ src/pipeline/physics_pipeline.rs | 2 +- 2 files changed, 17 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/counters/timer.rs b/src/counters/timer.rs index fd25063..bc0397d 100644 --- a/src/counters/timer.rs +++ b/src/counters/timer.rs @@ -4,6 +4,7 @@ use std::fmt::{Display, Error, Formatter}; #[derive(Copy, Clone, Debug, Default)] pub struct Timer { time: f64, + #[allow(dead_code)] // The field isn’t used if the `profiler` feature isn’t enabled. start: Option, } @@ -23,21 +24,30 @@ impl Timer { /// Start the timer. pub fn start(&mut self) { - self.time = 0.0; - self.start = Some(instant::now()); + #[cfg(feature = "profiler")] + { + self.time = 0.0; + self.start = Some(instant::now()); + } } /// Pause the timer. pub fn pause(&mut self) { - if let Some(start) = self.start { - self.time += instant::now() - start; + #[cfg(feature = "profiler")] + { + if let Some(start) = self.start { + self.time += instant::now() - start; + } + self.start = None; } - self.start = None; } /// Resume the timer. pub fn resume(&mut self) { - self.start = Some(instant::now()); + #[cfg(feature = "profiler")] + { + self.start = Some(instant::now()); + } } /// The measured time between the last `.start()` and `.pause()` calls. diff --git a/src/pipeline/physics_pipeline.rs b/src/pipeline/physics_pipeline.rs index 012f40f..19749be 100644 --- a/src/pipeline/physics_pipeline.rs +++ b/src/pipeline/physics_pipeline.rs @@ -54,7 +54,7 @@ impl PhysicsPipeline { /// Initializes a new physics pipeline. pub fn new() -> PhysicsPipeline { PhysicsPipeline { - counters: Counters::new(false), + counters: Counters::new(true), solvers: Vec::new(), manifold_indices: Vec::new(), joint_constraint_indices: Vec::new(), -- cgit