pub struct ProfileStore {
pub profiles: Vec<AuditProfile>,
}Expand description
Root document for ~/.aaai/profiles.yaml.
Fields§
§profiles: Vec<AuditProfile>Implementations§
Source§impl ProfileStore
impl ProfileStore
Sourcepub fn load() -> Result<Self>
pub fn load() -> Result<Self>
Load from ~/.aaai/profiles.yaml, returning empty store if absent.
pub fn add(&mut self, profile: AuditProfile)
pub fn remove(&mut self, name: &str)
Sourcepub fn touch(&mut self, name: &str) -> Result<bool>
pub fn touch(&mut self, name: &str) -> Result<bool>
RFC 023 §3.2: stamp the profile’s last_used_at to now and persist.
Looks up by name (the same key add() uses for replace-on-match).
Returns Ok(true) if a profile with that name was found and
updated, Ok(false) if no such profile exists (the store is left
unchanged). Errors only on I/O during save.
Sourcepub fn sorted_by_recent(&self) -> Vec<&AuditProfile>
pub fn sorted_by_recent(&self) -> Vec<&AuditProfile>
RFC 023 §3.2: profiles sorted by last_used_at descending.
Profiles without a last_used_at (legacy entries) come last,
in their original insertion order relative to each other.
Trait Implementations§
Source§impl Clone for ProfileStore
impl Clone for ProfileStore
Source§fn clone(&self) -> ProfileStore
fn clone(&self) -> ProfileStore
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProfileStore
impl Debug for ProfileStore
Source§impl Default for ProfileStore
impl Default for ProfileStore
Source§fn default() -> ProfileStore
fn default() -> ProfileStore
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ProfileStore
impl<'de> Deserialize<'de> for ProfileStore
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ProfileStore
impl RefUnwindSafe for ProfileStore
impl Send for ProfileStore
impl Sync for ProfileStore
impl Unpin for ProfileStore
impl UnsafeUnpin for ProfileStore
impl UnwindSafe for ProfileStore
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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