Trait Bot

Source
pub trait Bot<B: Board> {
    // Required method
    fn select_move(&mut self, board: &B) -> Result<B::Move, BoardDone>;
}

Required Methods§

Source

fn select_move(&mut self, board: &B) -> Result<B::Move, BoardDone>

Pick a move to play.

self is mutable to allow for random state, this method is not supposed to modify self in any other significant way.

Implementors§

Source§

impl<B: Board, F: FnMut(&B) -> Result<B::Move, BoardDone>> Bot<B> for F

Source§

impl<B: Board, H: Heuristic<B> + Debug, R: Rng> Bot<B> for MiniMaxBot<B, H, R>

Source§

impl<B: Board, R: Rng> Bot<B> for RandomBot<R>

Source§

impl<B: Board, R: Rng> Bot<B> for RolloutBot<R>

Source§

impl<B: Board, R: Rng> Bot<B> for SolverBot<R>

Source§

impl<R: Rng, B: AltBoard> Bot<B> for MCTSBot<R>