82static inline bool rsmc_player_is_valid(
const RsmcPlayer player)
104static inline bool rsmc_game_status_is_valid(
const RsmcGameStatus status)
131static_assert(
sizeof(
RsmcGameState) == 3,
"unexpected padding in RsmcGameState");
148static_assert(
sizeof(
RsmcBoard) ==
sizeof(uint64_t) * 2,
"unexpected padding in RsmcBoard");
uint8_t RsmcPlayer
Player's color.
Definition core.h:70
uint64_t RsmcBitMask
Definition core.h:134
uint64_t RsmcBitMap
Definition core.h:133
uint8_t RsmcPlayerScore
Definition core.h:114
@ RsmcPlayerCount
Definition core.h:74
@ RsmcPlayerWhite
Definition core.h:73
@ RsmcPlayerBlack
Definition core.h:72
uint32_t RsmcVersion
Definition core.h:23
@ RsmcGameStatusContinue
Definition core.h:92
@ RsmcGameStatusWhiteWin
Definition core.h:95
@ RsmcGameStatusBlackWin
Definition core.h:94
@ RsmcGameStatusDraw
Definition core.h:93
@ RsmcGameStatusCount
Definition core.h:96
uint8_t RsmcGameStatus
Game status (continue, draw, black win, white win).
Definition core.h:90
@ RsmcMinCoord
Minimal possible value for index on the 2-dimensional board.
Definition core.h:47
@ RsmcMaxCoord
Maximal possible value for index on the 2-dimensional board.
Definition core.h:51
@ RsmcMaxCellIndex
Maximal possible value for index on the 1-dimensional board.
Definition core.h:59
@ RsmcMaxValidMoves
Maximal possible count of valid moves. Proven by Takizawa, Hiroki in 2023.
Definition core.h:64
@ RsmcBoardArea
Count of cells on the board.
Definition core.h:43
@ RsmcBoardSize
Size of one side of the board.
Definition core.h:39
@ RsmcMinCellIndex
Minimal possible value for index on the 1-dimensional board.
Definition core.h:55
Stores board as two RsmcBitMap for each player pieces.
Definition core.h:139
RsmcBitMap black
Definition core.h:142
RsmcBitMap white
Definition core.h:143
Stores score for both players and game status.
Definition core.h:127
RsmcPlayersScore score
Definition core.h:128
RsmcGameStatus game_status
Definition core.h:129
#define RSMC_VERSION_PATCH
Definition version.h:16
#define RSMC_VERSION_MAJOR
Definition version.h:14
#define RSMC_VERSION_MINOR
Definition version.h:15