1use super::*;
4
5pub const A1: Position = Position(A, One);
6pub const A2: Position = Position(A, Two);
7pub const A3: Position = Position(A, Three);
8pub const A4: Position = Position(A, Four);
9pub const A5: Position = Position(A, Five);
10pub const A6: Position = Position(A, Six);
11pub const A7: Position = Position(A, Seven);
12pub const A8: Position = Position(A, Eight);
13pub const B1: Position = Position(B, One);
14pub const B2: Position = Position(B, Two);
15pub const B3: Position = Position(B, Three);
16pub const B4: Position = Position(B, Four);
17pub const B5: Position = Position(B, Five);
18pub const B6: Position = Position(B, Six);
19pub const B7: Position = Position(B, Seven);
20pub const B8: Position = Position(B, Eight);
21pub const C1: Position = Position(C, One);
22pub const C2: Position = Position(C, Two);
23pub const C3: Position = Position(C, Three);
24pub const C4: Position = Position(C, Four);
25pub const C5: Position = Position(C, Five);
26pub const C6: Position = Position(C, Six);
27pub const C7: Position = Position(C, Seven);
28pub const C8: Position = Position(C, Eight);
29pub const D1: Position = Position(D, One);
30pub const D2: Position = Position(D, Two);
31pub const D3: Position = Position(D, Three);
32pub const D4: Position = Position(D, Four);
33pub const D5: Position = Position(D, Five);
34pub const D6: Position = Position(D, Six);
35pub const D7: Position = Position(D, Seven);
36pub const D8: Position = Position(D, Eight);
37pub const E1: Position = Position(E, One);
38pub const E2: Position = Position(E, Two);
39pub const E3: Position = Position(E, Three);
40pub const E4: Position = Position(E, Four);
41pub const E5: Position = Position(E, Five);
42pub const E6: Position = Position(E, Six);
43pub const E7: Position = Position(E, Seven);
44pub const E8: Position = Position(E, Eight);
45pub const F1: Position = Position(F, One);
46pub const F2: Position = Position(F, Two);
47pub const F3: Position = Position(F, Three);
48pub const F4: Position = Position(F, Four);
49pub const F5: Position = Position(F, Five);
50pub const F6: Position = Position(F, Six);
51pub const F7: Position = Position(F, Seven);
52pub const F8: Position = Position(F, Eight);
53pub const G1: Position = Position(G, One);
54pub const G2: Position = Position(G, Two);
55pub const G3: Position = Position(G, Three);
56pub const G4: Position = Position(G, Four);
57pub const G5: Position = Position(G, Five);
58pub const G6: Position = Position(G, Six);
59pub const G7: Position = Position(G, Seven);
60pub const G8: Position = Position(G, Eight);
61pub const H1: Position = Position(H, One);
62pub const H2: Position = Position(H, Two);
63pub const H3: Position = Position(H, Three);
64pub const H4: Position = Position(H, Four);
65pub const H5: Position = Position(H, Five);
66pub const H6: Position = Position(H, Six);
67pub const H7: Position = Position(H, Seven);
68pub const H8: Position = Position(H, Eight);
69
70pub const FILE_A: [Position; 8] = [A1, A2, A3, A4, A5, A6, A7, A8];
72pub const FILE_B: [Position; 8] = [B1, B2, B3, B4, B5, B6, B7, B8];
74pub const FILE_C: [Position; 8] = [C1, C2, C3, C4, C5, C6, C7, C8];
76pub const FILE_D: [Position; 8] = [D1, D2, D3, D4, D5, D6, D7, D8];
78pub const FILE_E: [Position; 8] = [E1, E2, E3, E4, E5, E6, E7, E8];
80pub const FILE_F: [Position; 8] = [F1, F2, F3, F4, F5, F6, F7, F8];
82pub const FILE_G: [Position; 8] = [G1, G2, G3, G4, G5, G6, G7, G8];
84pub const FILE_H: [Position; 8] = [H1, H2, H3, H4, H5, H6, H7, H8];
86
87pub const RANK_ONE: [Position; 8] = [A1, B1, C1, D1, E1, F1, G1, H1];
89pub const RANK_TWO: [Position; 8] = [A2, B2, C2, D2, E2, F2, G2, H2];
91pub const RANK_THREE: [Position; 8] = [A3, B3, C3, D3, E3, F3, G3, H3];
93pub const RANK_FOUR: [Position; 8] = [A4, B4, C4, D4, E4, F4, G4, H4];
95pub const RANK_FIVE: [Position; 8] = [A5, B5, C5, D5, E5, F5, G5, H5];
97pub const RANK_SIX: [Position; 8] = [A6, B6, C6, D6, E6, F6, G6, H6];
99pub const RANK_SEVEN: [Position; 8] = [A7, B7, C7, D7, E7, F7, G7, H7];
101pub const RANK_EIGHT: [Position; 8] = [A8, B8, C8, D8, E8, F8, G8, H8];
103
104pub const INCREASING_A1_A2: [Position; 64] = [
106 A1, A2, A3, A4, A5, A6, A7, A8, B1, B2, B3, B4, B5, B6, B7, B8, C1, C2, C3, C4, C5, C6, C7, C8,
107 D1, D2, D3, D4, D5, D6, D7, D8, E1, E2, E3, E4, E5, E6, E7, E8, F1, F2, F3, F4, F5, F6, F7, F8,
108 G1, G2, G3, G4, G5, G6, G7, G8, H1, H2, H3, H4, H5, H6, H7, H8,
109];
110
111pub const INCREASING_A1_B1: [Position; 64] = [
113 A1, B1, C1, D1, E1, F1, G1, H1, A2, B2, C2, D2, E2, F2, G2, H2, A3, B3, C3, D3, E3, F3, G3, H3,
114 A4, B4, C4, D4, E4, F4, G4, H4, A5, B5, C5, D5, E5, F5, G5, H5, A6, B6, C6, D6, E6, F6, G6, H6,
115 A7, B7, C7, D7, E7, F7, G7, H7, A8, B8, C8, D8, E8, F8, G8, H8,
116];
117
118pub const ALL_FILES: [File; 8] = [
119 File::A,
120 File::B,
121 File::C,
122 File::D,
123 File::E,
124 File::F,
125 File::G,
126 File::H,
127];
128pub const ALL_RANKS: [Rank; 8] = [
129 Rank::One,
130 Rank::Two,
131 Rank::Three,
132 Rank::Four,
133 Rank::Five,
134 Rank::Six,
135 Rank::Seven,
136 Rank::Eight,
137];