use crate::internal::get_current_timestamp;
use std::io;
pub(crate) trait ValueEntry<'a>: Sized {
fn get_expiry(&self) -> u64;
fn from_data_array(data: &'a [u8], offset: usize) -> io::Result<Self>;
fn as_bytes(&self) -> Vec<u8>;
fn is_expired(&self) -> bool {
let expiry = self.get_expiry();
if expiry == 0 {
false
} else {
expiry < get_current_timestamp()
}
}
}