Added default implementation for TeamMessage

This commit is contained in:
2022-12-20 11:08:27 +01:00
parent 2b83ee5ef9
commit b93194f762
2 changed files with 15 additions and 6 deletions

View File

@@ -6,6 +6,7 @@ use crate::{
sort_perm, tuple_gt, tuple_max, N00, N_INF,
};
#[derive(Debug)]
pub struct Game {
teams: Vec<Vec<Player>>,
result: Vec<f64>,
@@ -80,7 +81,7 @@ impl Game {
this
}
fn likelihoods(&mut self) -> &Vec<Vec<Gaussian>> {
fn likelihoods(&mut self) {
let m_t_ft = self.likelihood_teams();
self.likelihoods = self
@@ -102,8 +103,6 @@ impl Game {
.collect::<Vec<_>>()
})
.collect::<Vec<_>>();
&self.likelihoods
}
fn likelihood_teams(&mut self) -> Vec<Gaussian> {
@@ -121,9 +120,7 @@ impl Game {
TeamMessage {
prior: performance,
likelihood_lose: N_INF,
likelihood_win: N_INF,
likelihood_draw: N_INF,
..Default::default()
}
})
.collect::<Vec<_>>();

View File

@@ -1,4 +1,5 @@
use crate::gaussian::Gaussian;
use crate::N_INF;
pub(crate) struct TeamMessage {
pub(crate) prior: Gaussian,
@@ -27,6 +28,17 @@ impl TeamMessage {
}
}
impl Default for TeamMessage {
fn default() -> Self {
Self {
prior: N_INF,
likelihood_lose: N_INF,
likelihood_win: N_INF,
likelihood_draw: N_INF,
}
}
}
/*
pub(crate) struct DrawMessage {
pub(crate) prior: Gaussian,