use crate::{gaussian::Gaussian, BETA, GAMMA}; #[derive(Clone, Copy, Debug)] pub struct Player { pub(crate) prior: Gaussian, pub(crate) beta: f64, pub(crate) gamma: f64, // pub(crate) draw: Gaussian, } impl Player { pub fn new(prior: Gaussian, beta: f64, gamma: f64) -> Self { Self { prior, beta, gamma, // draw: N_INF, } } pub(crate) fn performance(&self) -> Gaussian { self.prior.forget(self.beta, 1) } } impl Default for Player { fn default() -> Self { Self { prior: Gaussian::default(), beta: BETA, gamma: GAMMA, // draw: N_INF, } } }