#[cfg(feature = "settings")]
use crate::settings::settings;
#[cfg_attr(feature = "settings", settings(crate_path = "crate"))]
#[cfg_attr(not(feature = "settings"), derive(Clone, Debug, serde::Deserialize))]
pub struct MemoryProfilerSettings {
pub enabled: bool,
#[serde(default = "MemoryProfilerSettings::default_sample_interval")]
pub sample_interval: u8,
}
#[cfg(not(feature = "settings"))]
impl Default for MemoryProfilerSettings {
fn default() -> Self {
Self {
enabled: false,
sample_interval: MemoryProfilerSettings::default_sample_interval(),
}
}
}
impl MemoryProfilerSettings {
fn default_sample_interval() -> u8 {
19
}
}