pub struct OpeningBook { /* private fields */ }Expand description
Opening book for chess positions
Implementations§
Source§impl OpeningBook
impl OpeningBook
Sourcepub fn with_standard_openings() -> Self
pub fn with_standard_openings() -> Self
Create a basic opening book with common openings
Sourcepub fn add_opening(
&mut self,
fen: &str,
evaluation: f32,
best_moves: Vec<(ChessMove, f32)>,
name: String,
eco_code: Option<String>,
) -> Result<(), String>
pub fn add_opening( &mut self, fen: &str, evaluation: f32, best_moves: Vec<(ChessMove, f32)>, name: String, eco_code: Option<String>, ) -> Result<(), String>
Add an opening entry
Sourcepub fn lookup(&self, board: &Board) -> Option<&OpeningEntry>
pub fn lookup(&self, board: &Board) -> Option<&OpeningEntry>
Look up position in opening book
Sourcepub fn get_all_openings(&self) -> &HashMap<String, OpeningEntry>
pub fn get_all_openings(&self) -> &HashMap<String, OpeningEntry>
Get all known openings
Sourcepub fn get_random_opening(&self) -> Option<ChessMove>
pub fn get_random_opening(&self) -> Option<ChessMove>
Get a random opening move from the starting position
Sourcepub fn get_statistics(&self) -> OpeningBookStats
pub fn get_statistics(&self) -> OpeningBookStats
Get opening book statistics for evaluation
Trait Implementations§
Source§impl Clone for OpeningBook
impl Clone for OpeningBook
Source§fn clone(&self) -> OpeningBook
fn clone(&self) -> OpeningBook
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for OpeningBook
impl RefUnwindSafe for OpeningBook
impl Send for OpeningBook
impl Sync for OpeningBook
impl Unpin for OpeningBook
impl UnwindSafe for OpeningBook
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more