version 1.4b27
[polyglot.git] / colour.cpp
1 \r
2 // colour.cpp\r
3 \r
4 // includes\r
5 \r
6 #include "colour.h"\r
7 #include "util.h"\r
8 \r
9 // functions\r
10 \r
11 // colour_is_ok()\r
12 \r
13 bool colour_is_ok(int colour) {\r
14 \r
15    return colour == Black || colour == White;\r
16 }\r
17 \r
18 // colour_is_white()\r
19 \r
20 bool colour_is_white(int colour) {\r
21 \r
22    ASSERT(colour_is_ok(colour));\r
23 \r
24    return colour == White;\r
25 }\r
26 \r
27 // colour_is_black()\r
28 \r
29 bool colour_is_black(int colour) {\r
30 \r
31    ASSERT(colour_is_ok(colour));\r
32 \r
33    return colour == Black;\r
34 }\r
35 \r
36 // colour_equal()\r
37 \r
38 bool colour_equal(int colour_1, int colour_2) {\r
39 \r
40    ASSERT(colour_is_ok(colour_2));\r
41 \r
42    return (colour_1 & colour_2) != 0;\r
43 }\r
44 \r
45 // colour_opp()\r
46 \r
47 int colour_opp(int colour) {\r
48 \r
49    ASSERT(colour_is_ok(colour));\r
50 \r
51    return colour ^ (BlackFlag^WhiteFlag);\r
52 }\r
53 \r
54 // end of colour.cpp\r
55 \r