1 2 3 4 5 6 7 8 9 10 11 12 13
use super::reset_engine::{Reset, ResetEngine}; pub trait Fitness<I, S, P> { fn eval_fitness(program: &mut I, states: &mut S) -> f64; } impl Reset<f64> for ResetEngine { fn reset(item: &mut f64) { *item = f64::NAN; } } pub struct FitnessEngine;