pub enum StateFlush {
EveryPass,
Every {
tokens: u32,
},
Trailing {
tokens: u32,
},
}Expand description
How the recurrent state is carried from one token to the next.
Variants§
EveryPass
The dense state is read and written back every pass. With drafts, the state after every candidate prefix is written and the accepted one kept.
Every
The dense state is written back once every tokens accepted tokens. Between flushes a log of each token’s
key, value, decay exponent and gate carries it, read with the state every pass; a rejected draft truncates
the log.
Trailing
The dense state is written back a window behind: each window of tokens logged tokens is replayed into the
state over the next window, a 1/tokens share of every head’s rows a token, as the read-out streams them. The
log holds the window being replayed and the one after it, at most 2·tokens tokens; a row already replayed reads
through the newer window, every other through both. The dense state is StateFlush::Every’s at the same
tokens, a window later.
Trait Implementations§
Source§impl Clone for StateFlush
impl Clone for StateFlush
Source§fn clone(&self) -> StateFlush
fn clone(&self) -> StateFlush
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for StateFlush
impl Debug for StateFlush
Source§impl Hash for StateFlush
impl Hash for StateFlush
Source§impl PartialEq for StateFlush
impl PartialEq for StateFlush
Source§impl Serialize for StateFlush
impl Serialize for StateFlush
impl Copy for StateFlush
impl Eq for StateFlush
impl StructuralPartialEq for StateFlush
Auto Trait Implementations§
impl Freeze for StateFlush
impl RefUnwindSafe for StateFlush
impl Send for StateFlush
impl Sync for StateFlush
impl Unpin for StateFlush
impl UnsafeUnpin for StateFlush
impl UnwindSafe for StateFlush
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.