Struct usiagent::hash::KyokumenHash [−][src]
pub struct KyokumenHash<T> where
T: Add + Sub + BitXor<Output = T> + Rand + Copy + InitialHash,
Wrapping<T>: Add<Output = Wrapping<T>> + Sub<Output = Wrapping<T>> + BitXor<Output = Wrapping<T>> + Copy, { /* fields omitted */ }
Expand description
局面のハッシュ値を計算する。差分計算対応
Implementations
KyokumenHash
の生成
pub fn calc_main_hash(
&self,
h: T,
t: Teban,
b: &Banmen,
mc: &MochigomaCollections,
m: AppliedMove,
obtained: &Option<MochigomaKind>
) -> T
pub fn calc_main_hash(
&self,
h: T,
t: Teban,
b: &Banmen,
mc: &MochigomaCollections,
m: AppliedMove,
obtained: &Option<MochigomaKind>
) -> T
メインハッシュを計算
Arguments
h
- 現在のハッシュt
- 手番b
- 手の適用前の盤面mc
- 手の適用前の持ち駒m
- 現在のハッシュに対して適用する指し手obtained
- 獲った駒
pub fn calc_sub_hash(
&self,
h: T,
t: Teban,
b: &Banmen,
mc: &MochigomaCollections,
m: AppliedMove,
obtained: &Option<MochigomaKind>
) -> T
pub fn calc_sub_hash(
&self,
h: T,
t: Teban,
b: &Banmen,
mc: &MochigomaCollections,
m: AppliedMove,
obtained: &Option<MochigomaKind>
) -> T
サブハッシュを計算
Arguments
h
- 現在のハッシュb
- 手の適用前の盤面t
- 手番mc
- 手の適用前の持ち駒m
- 現在のハッシュに対して適用する指し手obtained
- 獲った駒