Skip to main content

Combo

Struct Combo 

Source
pub struct Combo { /* private fields */ }
Expand description

Represents a valid character and vehicle combination from a Mario Kart Wii RKG ghost file.

A combo is only valid when the character and vehicle share the same weight_class::WeightClass. Construction via Combo::new enforces this constraint.

Implementations§

Source§

impl Combo

Source

pub const fn get_transmission(&self) -> Transmission

Source§

impl Combo

Source

pub fn new(vehicle: Vehicle, character: Character) -> Result<Self, ComboError>

Creates a new Combo from a vehicle and character.

§Errors

Returns ComboError::IncongruentWeightClasses if the character and vehicle do not share the same WeightClass.

Source

pub const fn character(&self) -> Character

Returns the character used in the run.

Source

pub const fn vehicle(&self) -> Vehicle

Returns the vehicle used in the run.

Trait Implementations§

Source§

impl Display for Combo

Formats the combo as "{character} on {vehicle}" (e.g. "Mario on Mach Bike").

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl GetWeightClass for Combo

Returns the weight class of the combo, which is always equal to both the character’s and vehicle’s weight class (enforced at construction time).

Source§

fn get_weight_class(&self) -> WeightClass

Returns the weight class of this character, vehicle, or combo.

Auto Trait Implementations§

§

impl Freeze for Combo

§

impl RefUnwindSafe for Combo

§

impl Send for Combo

§

impl Sync for Combo

§

impl Unpin for Combo

§

impl UnsafeUnpin for Combo

§

impl UnwindSafe for Combo

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.