pub struct RolloutSearch<'a, R: Sides, O, P, E> { /* private fields */ }Expand description
A decision of a Rollout bot under way: its loop state in a value,
so the work can be split over many calls (frames, later).
Implementations§
Source§impl<R, O, P, E> RolloutSearch<'_, R, O, P, E>
impl<R, O, P, E> RolloutSearch<'_, R, O, P, E>
Sourcepub fn advance(&mut self, units: u32) -> Option<R::Command>
pub fn advance(&mut self, units: u32) -> Option<R::Command>
Does at most units units of work (commands applied to copies) and
returns the chosen command once the decision is made, None while
it is working. Once made, it returns the same command again.
§Panics
With a message naming determinize when a copy lists other
commands than the real state, or refuses a candidate: a bug in the
game’s Determinize::determinize.
Auto Trait Implementations§
impl<'a, R, O, P, E> !UnwindSafe for RolloutSearch<'a, R, O, P, E>
impl<'a, R, O, P, E> Freeze for RolloutSearch<'a, R, O, P, E>
impl<'a, R, O, P, E> RefUnwindSafe for RolloutSearch<'a, R, O, P, E>where
R: RefUnwindSafe,
<R as Sides>::Side: RefUnwindSafe,
<R as TurnRules>::Command: RefUnwindSafe,
O: RefUnwindSafe,
P: RefUnwindSafe,
E: RefUnwindSafe,
impl<'a, R, O, P, E> Send for RolloutSearch<'a, R, O, P, E>
impl<'a, R, O, P, E> Sync for RolloutSearch<'a, R, O, P, E>
impl<'a, R, O, P, E> Unpin for RolloutSearch<'a, R, O, P, E>
impl<'a, R, O, P, E> UnsafeUnpin for RolloutSearch<'a, R, O, P, E>
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