-
Notifications
You must be signed in to change notification settings - Fork 7
/
BitBoardMap.cs
40 lines (27 loc) · 1.05 KB
/
BitBoardMap.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
using Backend.Data.Enum;
using BenchmarkDotNet.Attributes;
namespace Benchmark;
[DisassemblyDiagnoser]
public class BitBoardMap
{
private readonly Backend.Data.Struct.BitBoardMap Map =
new("rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR", "w", "KQkq", "-");
[Benchmark]
public Backend.Data.Struct.BitBoardMap Clone() => Map;
[Benchmark]
public (Piece, PieceColor) GetWhitePawn() => Map[Square.A2];
[Benchmark]
public (Piece, PieceColor) GetWhiteRook() => Map[Square.A1];
[Benchmark]
public (Piece, PieceColor) GetWhiteQueen() => Map[Square.D1];
[Benchmark]
public (Piece, PieceColor) GetWhiteKing() => Map[Square.E1];
[Benchmark]
public (Piece, PieceColor) GetBlackPawn() => Map[Square.A7];
[Benchmark]
public (Piece, PieceColor) GetBlackRook() => Map[Square.A8];
[Benchmark]
public (Piece, PieceColor) GetBlackQueen() => Map[Square.D8];
[Benchmark]
public (Piece, PieceColor) GetBlackKing() => Map[Square.E8];
}