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
41
//! Player side: the camp a player belongs to.
/// The camp a player belongs to.
///
/// In SIN, the *case* of the abbreviation letter encodes the side: an uppercase
/// letter (`A`–`Z`) denotes [`Side::First`], a lowercase letter (`a`–`z`)
/// denotes [`Side::Second`]. This mirrors the two-side model of the
/// [glossary](https://sashite.dev/glossary/): a side is a pure label
/// (`first` / `second`) that acquires meaning only once a rule system assigns
/// it to a player or piece.
///
/// Unlike a piece side, a *player* side is fixed for the duration of a match,
/// which is what makes a SIN token a stable player identifier.