Struct Iterate

Source
pub struct Iterate<Dim: Dimension, F: Fn(&Schedule<Dim>) -> f64>(/* private fields */);
Expand description

Generate many schedules each using different iteration parameters and choose the one that minimizes the value returned by scorer.

Can be used as the .iterate() method.

Implementations§

Source§

impl<Dim: Dimension, F: Fn(&Schedule<Dim>) -> f64> Iterate<Dim, F>

Source

pub const fn new(iterations: u64, scorer: F) -> Iterate<Dim, F>

Create a new instance of the modifier.

Trait Implementations§

Source§

impl<Dim: Debug + Dimension, F: Debug + Fn(&Schedule<Dim>) -> f64> Debug for Iterate<Dim, F>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<Dim: Dimension, F: Fn(&Schedule<Dim>) -> f64> Modifier<Dim> for Iterate<Dim, F>

Source§

type Output<T: Generator<Dim>> = IterateGenerator<Dim, T, F>

The new generator after applying the modifier
Source§

fn modify<T: Generator<Dim>>(self, generator: T) -> Self::Output<T>

Apply the modifier to a schedule generator

Auto Trait Implementations§

§

impl<Dim, F> Freeze for Iterate<Dim, F>
where F: Freeze,

§

impl<Dim, F> RefUnwindSafe for Iterate<Dim, F>

§

impl<Dim, F> Send for Iterate<Dim, F>
where F: Send,

§

impl<Dim, F> Sync for Iterate<Dim, F>
where F: Sync,

§

impl<Dim, F> Unpin for Iterate<Dim, F>
where F: Unpin, Dim: Unpin,

§

impl<Dim, F> UnwindSafe for Iterate<Dim, F>
where F: UnwindSafe, Dim: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V