Skip to main content

Chance

Struct Chance 

Source
pub struct Chance<'a, 'g> { /* private fields */ }
Expand description

A chance node

A chance node represents a point in the game where things advance randomly, or alternatively, where “nature” takes a turn.

Implementations§

Source§

impl<'a, 'g> Chance<'a, 'g>

Source

pub fn name(self) -> &'a EscapedStr

The name of the node

Source

pub fn infoset(self) -> u64

The id of the node’s infoset

Source

pub fn infoset_name(self) -> &'a EscapedStr

The infoset’s label

Source

pub fn actions( self, ) -> impl Iterator<Item = (&'a EscapedStr, &'g BigRational, Node<'a, 'g>)> + 'g

All possible actions with their names, probabilities, and resulting nodes

Source

pub fn action(self, label: &str) -> Option<(&'g BigRational, Node<'a, 'g>)>

The probability and child for the action with the given label

label is matched against the unescaped form of each action’s label. Labels need not be unique within an infoset, so this returns the first match.

Source

pub fn len(self) -> usize

The number of actions (always at least one)

Source

pub fn action_at( self, index: usize, ) -> Option<(&'a EscapedStr, &'g BigRational, Node<'a, 'g>)>

The name, probability, and child for the action at the given index

Source

pub fn outcome(self) -> u64

The outcome id

Source

pub fn outcome_name(self) -> Option<&'a EscapedStr>

The name of the outcome

None for the null (0) outcome.

Source

pub fn outcome_payoffs(self) -> Option<&'g [BigRational]>

Outcome payoffs for this node

These are added to every player’s payoff for traversing through this node. None only for the null (0) outcome.

Trait Implementations§

Source§

impl<'a, 'g> Clone for Chance<'a, 'g>

Source§

fn clone(&self) -> Chance<'a, 'g>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a, 'g> Copy for Chance<'a, 'g>

Auto Trait Implementations§

§

impl<'a, 'g> Freeze for Chance<'a, 'g>

§

impl<'a, 'g> RefUnwindSafe for Chance<'a, 'g>

§

impl<'a, 'g> Send for Chance<'a, 'g>

§

impl<'a, 'g> Sync for Chance<'a, 'g>

§

impl<'a, 'g> Unpin for Chance<'a, 'g>

§

impl<'a, 'g> UnsafeUnpin for Chance<'a, 'g>

§

impl<'a, 'g> UnwindSafe for Chance<'a, 'g>

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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.