diff options
Diffstat (limited to 'crates/ra_prof')
-rw-r--r-- | crates/ra_prof/Cargo.toml | 5 | ||||
-rw-r--r-- | crates/ra_prof/src/lib.rs | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/crates/ra_prof/Cargo.toml b/crates/ra_prof/Cargo.toml index c33b5121a..eabfcebb0 100644 --- a/crates/ra_prof/Cargo.toml +++ b/crates/ra_prof/Cargo.toml | |||
@@ -20,3 +20,8 @@ jemalloc-ctl = { version = "0.3.3", optional = true } | |||
20 | [features] | 20 | [features] |
21 | jemalloc = [ "jemallocator", "jemalloc-ctl" ] | 21 | jemalloc = [ "jemallocator", "jemalloc-ctl" ] |
22 | cpu_profiler = [] | 22 | cpu_profiler = [] |
23 | |||
24 | # Uncomment to enable for the whole crate graph | ||
25 | # default = [ "backtrace" ] | ||
26 | # default = [ "jemalloc" ] | ||
27 | # default = [ "cpu_profiler" ] | ||
diff --git a/crates/ra_prof/src/lib.rs b/crates/ra_prof/src/lib.rs index 89df7f04b..0fb468375 100644 --- a/crates/ra_prof/src/lib.rs +++ b/crates/ra_prof/src/lib.rs | |||
@@ -43,6 +43,7 @@ pub struct Scope { | |||
43 | } | 43 | } |
44 | 44 | ||
45 | impl Scope { | 45 | impl Scope { |
46 | #[must_use] | ||
46 | pub fn enter() -> Scope { | 47 | pub fn enter() -> Scope { |
47 | let prev = IN_SCOPE.with(|slot| std::mem::replace(&mut *slot.borrow_mut(), true)); | 48 | let prev = IN_SCOPE.with(|slot| std::mem::replace(&mut *slot.borrow_mut(), true)); |
48 | Scope { prev } | 49 | Scope { prev } |
@@ -78,6 +79,7 @@ pub struct CpuProfiler { | |||
78 | _private: (), | 79 | _private: (), |
79 | } | 80 | } |
80 | 81 | ||
82 | #[must_use] | ||
81 | pub fn cpu_profiler() -> CpuProfiler { | 83 | pub fn cpu_profiler() -> CpuProfiler { |
82 | #[cfg(feature = "cpu_profiler")] | 84 | #[cfg(feature = "cpu_profiler")] |
83 | { | 85 | { |