libnotcurses_sys/
stats.rs

1//! `NcStats`
2
3use crate::{c_api, Nc};
4
5/// notcurses runtime statistics
6pub type NcStats = c_api::ffi::ncstats;
7
8/// # `NcStats` Methods.
9impl NcStats {
10    /// Allocates an NcStats object.
11    pub fn new(nc: &mut Nc) -> &mut Self {
12        unsafe { &mut *c_api::notcurses_stats_alloc(nc) }
13    }
14
15    /// Acquires an atomic snapshot of the notcurses object's stats.
16    pub fn stats(&mut self, nc: &mut Nc) {
17        unsafe { c_api::notcurses_stats(nc, self) }
18    }
19
20    /// Resets all cumulative stats (immediate ones are not reset).
21    pub fn reset(&mut self, nc: &mut Nc) {
22        unsafe { c_api::notcurses_stats_reset(nc, self) }
23    }
24}