pub struct MarkovChain<T> { /* private fields */ }Expand description
Markov model structure
Implementations§
Source§impl<T> MarkovChain<T>
impl<T> MarkovChain<T>
Sourcepub fn from(elements: &[T]) -> MarkovChain<T>
pub fn from(elements: &[T]) -> MarkovChain<T>
Builds a new model from [&[T]].
T must implement Clone, Eq, Ord, PartialOrd
and PartialEq traits.
Sourcepub fn next(&mut self) -> &T
pub fn next(&mut self) -> &T
Returns a next possible state.
The first state will be determined randomly, and the next one will be chosen by its state space.
If you want to initialize the chain of states, use
initialize() methods.
Sourcepub fn next_rng(&mut self, rng: &mut ThreadRng) -> &T
pub fn next_rng(&mut self, rng: &mut ThreadRng) -> &T
Returns a next possible state using an external ThreadRng.
Sourcepub fn initialize(&mut self)
pub fn initialize(&mut self)
Initializes prev_index with the length of state_space.
Trait Implementations§
Source§impl<T: Debug> Debug for MarkovChain<T>
impl<T: Debug> Debug for MarkovChain<T>
Source§impl<'de, T> Deserialize<'de> for MarkovChain<T>where
T: Deserialize<'de>,
impl<'de, T> Deserialize<'de> for MarkovChain<T>where
T: Deserialize<'de>,
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
Source§impl<T: PartialEq> PartialEq for MarkovChain<T>
impl<T: PartialEq> PartialEq for MarkovChain<T>
Source§impl<T> Serialize for MarkovChain<T>where
T: Serialize,
impl<T> Serialize for MarkovChain<T>where
T: Serialize,
impl<T> StructuralPartialEq for MarkovChain<T>
Auto Trait Implementations§
impl<T> Freeze for MarkovChain<T>
impl<T> RefUnwindSafe for MarkovChain<T>where
T: RefUnwindSafe,
impl<T> Send for MarkovChain<T>where
T: Send,
impl<T> Sync for MarkovChain<T>where
T: Sync,
impl<T> Unpin for MarkovChain<T>where
T: Unpin,
impl<T> UnwindSafe for MarkovChain<T>where
T: UnwindSafe,
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