void Token::print(std::ostream& out, IVocabulary const* voc) const { if (start() == kNoState) out << "?"; else out << start(); out << "-"; if (getEndState() == kNoState) out << "?"; else out << getEndState(); out << ","; if (!syms_.empty()) { ::adl::adl_print(out, syms_, voc); out << ","; } if (props_ == kUnspecified) out << '*'; else { // if (props_ & kBlockLeft) out << '{'; if (props_ & kMustExtendLeft) out << '<'; if (props_ & kExtendableLeft) out << '['; if (props_ & kExtendableRight) out << ']'; if (props_ & kMustExtendRight) out << '>'; if (props_ & kBlockRight) out << '}'; } }
bool GameOver::_isEndStateSet(const mgen::FieldSetDepth depth) const { if (depth == mgen::SHALLOW) { return _m_endState_isSet; } else { return _m_endState_isSet && mgen::validation::validateFieldDeep(getEndState()); } }
bool GameOver::operator==(const GameOver& other) const { return true && _isReasonSet(mgen::SHALLOW) == other._isReasonSet(mgen::SHALLOW) && _isWinnerSet(mgen::SHALLOW) == other._isWinnerSet(mgen::SHALLOW) && _isLoserSet(mgen::SHALLOW) == other._isLoserSet(mgen::SHALLOW) && _isEndStateSet(mgen::SHALLOW) == other._isEndStateSet(mgen::SHALLOW) && getReason() == other.getReason() && getWinner() == other.getWinner() && getLoser() == other.getLoser() && getEndState() == other.getEndState(); }