Trait alcibiades::HashTableEntry
[−]
[src]
pub trait HashTableEntry: Copy { fn new(value: Value,
bound: BoundType,
depth: Depth,
move_digest: MoveDigest)
-> Self; fn with_static_eval(value: Value,
bound: BoundType,
depth: Depth,
move_digest: MoveDigest,
static_eval: Value)
-> Self; fn value(&self) -> Value; fn bound(&self) -> BoundType; fn depth(&self) -> Depth; fn move_digest(&self) -> MoveDigest; fn static_eval(&self) -> Value; }
A trait for transposition table entries.
Required Methods
fn new(value: Value,
bound: BoundType,
depth: Depth,
move_digest: MoveDigest)
-> Self
bound: BoundType,
depth: Depth,
move_digest: MoveDigest)
-> Self
Creates a new instance.
value
-- The value assigned to the position. Must not beVALUE_UNKNOWN
.bound
-- The accuracy of the assigned value.depth
-- The depth of search. Must be betweenDEPTH_MIN
andDEPTH_MAX
.move_digest
-- Best or refutation move digest, orMoveDigest::invalid()
if no move is available.
fn with_static_eval(value: Value,
bound: BoundType,
depth: Depth,
move_digest: MoveDigest,
static_eval: Value)
-> Self
bound: BoundType,
depth: Depth,
move_digest: MoveDigest,
static_eval: Value)
-> Self
Creates a new instance.
The only difference between this function and new
is that
this function requires one additional parameter:
static_eval
-- Position's static evaluation, orVALUE_UNKNOWN
.
Important note: static_eval
will be ignored if there is
no field allotted for it in the underlying memory structure.
fn value(&self) -> Value
Returns the value assigned to the position.
fn bound(&self) -> BoundType
Returns the accuracy of the assigned value.
fn depth(&self) -> Depth
Returns the search depth for the assigned value.
fn move_digest(&self) -> MoveDigest
Returns best or refutation move digest, or
MoveDigest::invalid()
if no move is available.
fn static_eval(&self) -> Value
Returns position's static evaluation, or VALUE_UNKNOWN
.
Implementors
impl HashTableEntry for StdHashTableEntry