Struct utility_programming::ModifyOptimizer [] [src]

pub struct ModifyOptimizer<M, U> {
    pub modifier: M,
    pub utility: U,
    pub tries: usize,
    pub depth: usize,
}

Modifies an object using a modifier by maximizing utility.

Fields

The modifier to modify the object.

The measured utility.

The number of tries before giving up.

The number of repeated modifications before backtracking.

Trait Implementations

impl<T, M, U> Modifier<T> for ModifyOptimizer<M, U> where
    M: Modifier<T>,
    U: Utility<T>,
    M::Change: Clone
[src]

The change applied to an object.

[src]

Modify an object and return the change. Read more

[src]

Undo change made to an object. Read more

[src]

Redo change made to an object. Read more

[src]

Undo meaning change in the modifier introduced by a change. Read more

[src]

Redo meaning change in the modifier. Read more

Auto Trait Implementations

impl<M, U> Send for ModifyOptimizer<M, U> where
    M: Send,
    U: Send

impl<M, U> Sync for ModifyOptimizer<M, U> where
    M: Sync,
    U: Sync