Skip to main content

KeyActivityLog

Struct KeyActivityLog 

Source
pub struct KeyActivityLog {
    pub events: Vec<ConnectEvent>,
}

Fields§

§events: Vec<ConnectEvent>

Implementations§

Source§

impl KeyActivityLog

Source

pub fn load() -> Self

Read the log from disk, pruning anything past the retention window. Missing files yield an empty log. Corrupt files are renamed aside to <path>.corrupt-<unix_ts> before defaulting so a future debugger can recover the data.

Source

pub fn record(&mut self, alias: &str, now: u64)

Append an event for alias at the supplied now timestamp. Prunes anything past the retention window using the same now so the prune cutoff matches the recorded event. Caller decides whether to flush; production call sites pass now_secs().

Source

pub fn flush(&self) -> Result<()>

Serialize to JSON and write atomically. Suppressed in demo mode so --demo never mutates the user’s real activity log. Tests that exercise this path set PATH_OVERRIDE to redirect writes into a tempdir, so the demo check fires uniformly in production and tests. The demo-suppress branch logs intent so --demo --verbose shows that recording is happening, just not landing on disk.

Source

pub fn record_oneshot(alias: &str, now: u64)

One-shot record. For non-TUI call sites (CLI mode) that do not hold an in-memory log between connects. Caller passes now; production CLI paths pass now_secs().

Source

pub fn last_use_for_aliases(&self, aliases: &[String]) -> Option<u64>

Timestamp of the most recent event whose alias appears in aliases.

Source

pub fn timestamps_for_aliases(&self, aliases: &[String]) -> Vec<u64>

All event timestamps for the given aliases, used by the shared activity chart renderer which auto-scales the time window from the oldest entry.

Trait Implementations§

Source§

impl Clone for KeyActivityLog

Source§

fn clone(&self) -> KeyActivityLog

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for KeyActivityLog

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for KeyActivityLog

Source§

fn default() -> KeyActivityLog

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for KeyActivityLog

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Serialize for KeyActivityLog

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,