[−][src]Struct dice_command_parser::dice_roll::DiceRoll
This struct represents the information required to calculate the result of a dice roll given the command string. Validating the sanity of each of the parameters is left to the user. e.g. The number of dice to roll could be 0.
Fields
number_of_dice_to_roll: u32
How many dice should be rolled.
dice_sides: u32
How many faces each dice has.
modifier: Option<i32>
The optional fixed modifier that should be applied to each dice roll. Can be positive or negative.
roll_type: RollType
Whether the roll has advantage, disadvantage, or is a regular roll
operation: Operation
How the roll should be applied
Implementations
impl DiceRoll
[src]
#[must_use]pub fn new(
dice_sides: u32,
modifier: Option<i32>,
number_of_dice_to_roll: u32,
roll_type: RollType,
operation: Operation
) -> Self
[src]
dice_sides: u32,
modifier: Option<i32>,
number_of_dice_to_roll: u32,
roll_type: RollType,
operation: Operation
) -> Self
A convinience method for creating a DiceRoll
.
Examples
This represents a d6 with no modifier
use dice_command_parser::dice_roll::{DiceRoll, RollType, Operation}; let dice_roll = DiceRoll::new(6, None, 1, RollType::Regular, Operation::Addition);
This represents two d20 with a +1 modifier rolling with advantage
use dice_command_parser::dice_roll::{DiceRoll, RollType, Operation}; let dice_roll = DiceRoll::new(20, Some(1), 2, RollType::WithAdvantage, Operation::Subtraction);
#[must_use]pub fn new_regular_roll(
dice_sides: u32,
modifier: Option<i32>,
number_of_dice_to_roll: u32,
operation: Operation
) -> Self
[src]
dice_sides: u32,
modifier: Option<i32>,
number_of_dice_to_roll: u32,
operation: Operation
) -> Self
A convinience method for creating a DiceRoll
, without advantage or disadvantage.
Examples
This represents a d6 with no modifier
use dice_command_parser::dice_roll::{DiceRoll, Operation}; let dice_roll = DiceRoll::new_regular_roll(6, None, 1, Operation::Addition);
This represents two d20 with a +1 modifier.
use dice_command_parser::dice_roll::{DiceRoll, Operation}; let dice_roll = DiceRoll::new_regular_roll(20, Some(1), 2, Operation::Addition);
Trait Implementations
impl Clone for DiceRoll
[src]
impl Debug for DiceRoll
[src]
impl PartialEq<DiceRoll> for DiceRoll
[src]
impl StructuralPartialEq for DiceRoll
[src]
Auto Trait Implementations
impl RefUnwindSafe for DiceRoll
impl Send for DiceRoll
impl Sync for DiceRoll
impl Unpin for DiceRoll
impl UnwindSafe for DiceRoll
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,