My Project
sennichite.cc
Go to the documentation of this file.
1 /* sennichite.cc
2  */
3 #include "osl/sennichite.h"
4 #include <stdexcept>
5 #include <iostream>
6 
8 {
10  return WHITE;
11  else if (value == Result::WHITE_LOSE)
12  return BLACK;
13  throw std::runtime_error("no winner");
14 }
15 
16 std::ostream& osl::operator<<(std::ostream& os, const Sennichite& s)
17 {
18  if (s.isNormal())
19  os << "sennichite normal";
20  else if (s.isDraw())
21  os << "sennichite draw";
22  else
23  os << "sennichite " << s.winner() << " win";
24  return os;
25 }
26 
27 /* ------------------------------------------------------------------------- */
28 // ;;; Local Variables:
29 // ;;; mode:c++
30 // ;;; c-basic-offset:2
31 // ;;; End:
sennichite.h
osl::WHITE
@ WHITE
Definition: basic_type.h:10
osl::Sennichite::isNormal
bool isNormal() const
Definition: sennichite.h:26
osl::operator<<
std::ostream & operator<<(std::ostream &os, Player player)
Definition: basic_type.cc:14
osl::Sennichite::winner
Player winner() const
Definition: sennichite.cc:7
osl::Sennichite
Definition: sennichite.h:12
osl::Sennichite::Result::WHITE_LOSE
@ WHITE_LOSE
Definition: sennichite.h:16
osl::BLACK
@ BLACK
Definition: basic_type.h:9
osl::Player
Player
Definition: basic_type.h:8
osl::Sennichite::Result::BLACK_LOSE
@ BLACK_LOSE
Definition: sennichite.h:16
osl::Sennichite::isDraw
bool isDraw() const
Definition: sennichite.h:27
osl::Sennichite::value
Result::Values value
Definition: sennichite.h:18