Struct inanis::cache::history::HistoryTable
source · pub struct HistoryTable {
pub table: [[HistoryTableEntry; 64]; 64],
pub max: AtomicU32,
}
Fields§
§table: [[HistoryTableEntry; 64]; 64]
§max: AtomicU32
Implementations§
source§impl HistoryTable
impl HistoryTable
sourcepub fn add(&self, from: usize, to: usize, depth: u8)
pub fn add(&self, from: usize, to: usize, depth: u8)
Increases [from][to]
history slot value based on depth
.
sourcepub fn get(&self, from: usize, to: usize, max: u8) -> u8
pub fn get(&self, from: usize, to: usize, max: u8) -> u8
Gets [from][to]
history slot value, relative to max
.
sourcepub fn age_values(&self)
pub fn age_values(&self)
Ages all values in the history table by dividing them by the AGING_DIVISOR.
sourcefn age_value(&self, value: u32) -> u32
fn age_value(&self, value: u32) -> u32
Ages a single value by dividing value by the AGING_DIVISOR.
Trait Implementations§
source§impl Clone for HistoryTable
impl Clone for HistoryTable
source§fn clone(&self) -> Self
fn clone(&self) -> Self
Clones HistoryTable by creating new atomics (with the original values).
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Default for HistoryTable
impl Default for HistoryTable
source§fn default() -> Self
fn default() -> Self
Constructs a default instance of HistoryTable with zeroed elements (except max
).
Auto Trait Implementations§
impl RefUnwindSafe for HistoryTable
impl Send for HistoryTable
impl Sync for HistoryTable
impl Unpin for HistoryTable
impl UnwindSafe for HistoryTable
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