10class TranspositionTable {
16 static constexpr int LOG_2_SIZE = 20;
19 enum NodeType { NONE = 0, EXACT = 1, LOWER = 2, UPPER = 3 };
25 TranspositionTable(
const int log_2_size = LOG_2_SIZE) {
26 tableSize = UINT64_C(1) << log_2_size;
27 table = std::make_unique<Entry[]>(tableSize);
30 inline Entry *get(
const Board &b) {
36 return &table[b.hash() & (tableSize - 1)];
40 std::unique_ptr<Entry[]> table;