pub struct MasteryWindow {
pub percentage: f32,
pub range: (f32, f32),
}Expand description
A mastery window consists a range of scores and the percentage of the total exercises in the batch returned by the scheduler that will fall within that range.
Mastery windows are used by the scheduler to control the amount of exercises for a given range of difficulty given to the student to try to keep an optimal balance. For example, exercises that are already fully mastered should not be shown very often lest the student becomes bored. Very difficult exercises should not be shown too often either lest the student becomes frustrated.
Fields§
§percentage: f32The percentage of the exercises in each batch returned by the scheduler whose scores should fall within this window.
range: (f32, f32)The range of scores which fall on this window. Scores whose values are in the range
[range.0, range.1) fall within this window. If range.1 is equal to 5.0 (the float
representation of the maximum possible score), then the range becomes inclusive.
Implementations§
Trait Implementations§
Source§impl Clone for MasteryWindow
impl Clone for MasteryWindow
Source§fn clone(&self) -> MasteryWindow
fn clone(&self) -> MasteryWindow
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MasteryWindow
impl Debug for MasteryWindow
Source§impl<'de> Deserialize<'de> for MasteryWindow
impl<'de> Deserialize<'de> for MasteryWindow
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>,
Source§impl PartialEq for MasteryWindow
impl PartialEq for MasteryWindow
Source§impl Serialize for MasteryWindow
impl Serialize for MasteryWindow
impl StructuralPartialEq for MasteryWindow
Auto Trait Implementations§
impl Freeze for MasteryWindow
impl RefUnwindSafe for MasteryWindow
impl Send for MasteryWindow
impl Sync for MasteryWindow
impl Unpin for MasteryWindow
impl UnsafeUnpin for MasteryWindow
impl UnwindSafe for MasteryWindow
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,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§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>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§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>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§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.Source§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.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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>
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>
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