pub struct SwissSystem {
pub wins: [u8; 16],
pub losses: [u8; 16],
pub diffs: [i8; 16],
pub opponents: [Set; 16],
pub probabilities_bo1: [[f32; 16]; 16],
pub probabilities_bo3: [[f32; 16]; 16],
pub ratings: [Rating; 16],
pub remaining: Set,
pub rounds_complete: u8,
}Expand description
Mutable state for one Swiss-system tournament iteration.
Fields§
§wins: [u8; 16]Match wins per team.
losses: [u8; 16]Match losses per team.
diffs: [i8; 16]Win-loss differential per team, used for record-group sorting.
opponents: [Set; 16]Opponents already faced by each team.
probabilities_bo1: [[f32; 16]; 16]Best-of-one win probability matrix, indexed by [team_a][team_b].
probabilities_bo3: [[f32; 16]; 16]Best-of-three win probability matrix, indexed by [team_a][team_b].
ratings: [Rating; 16]Team ratings sorted by initial seed.
remaining: SetTeams that have not yet advanced or been eliminated.
rounds_complete: u8Number of completed tournament rounds.
Implementations§
Trait Implementations§
Source§impl Clone for SwissSystem
impl Clone for SwissSystem
Source§fn clone(&self) -> SwissSystem
fn clone(&self) -> SwissSystem
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for SwissSystem
Auto Trait Implementations§
impl Freeze for SwissSystem
impl RefUnwindSafe for SwissSystem
impl Send for SwissSystem
impl Sync for SwissSystem
impl Unpin for SwissSystem
impl UnsafeUnpin for SwissSystem
impl UnwindSafe for SwissSystem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more