void PackageParser::parseEnum(const EmojicodeString &documentation, bool exported) { EmojicodeChar name, enamespace; parseAndValidateNewTypeName(&name, &enamespace); Enum *eenum = new Enum(name, package_, documentation); package_->registerType(Type(eenum, false), name, enamespace, exported); auto token = stream_.consumeToken(IDENTIFIER); if (token.value[0] != E_GRAPES) { ecCharToCharStack(token.value[0], s); throw CompilerErrorException(token, "Expected 🍇 but found %s instead.", s); } while (stream_.nextTokenIsEverythingBut(E_WATERMELON)) { eenum->addValueFor(stream_.consumeToken().value[0]); } stream_.consumeToken(IDENTIFIER); }