1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-15 00:05:02 +02:00

second part of c++11 update. gcc 4.5 and VS 2010 are no longer supported

- BOOST_FOREACH -> for
- replaced several boost classes with std (e.g. unordered)
- removed gcc-4.5 workarounds
- ran clang c++11 migration tool to detect some cases:
- - pointer initialized with "0" to nullptr
- - replace for with iterators with range-based for
- - use auto in some situations (type name specified twice, avoid long iterators type names)
This commit is contained in:
Ivan Savenko
2013-06-29 13:05:48 +00:00
parent 262f956a16
commit f82122d9be
88 changed files with 2065 additions and 2062 deletions

View File

@ -310,7 +310,7 @@ const CRmgTemplate * CMapGenOptions::getPossibleTemplate(CRandomGenerator & gen)
// Find potential templates
const auto & tpls = getAvailableTemplates();
std::list<const CRmgTemplate *> potentialTpls;
BOOST_FOREACH(const auto & tplPair, tpls)
for(const auto & tplPair : tpls)
{
const auto & tpl = tplPair.second;
CRmgTemplate::CSize tplSize(width, height, hasTwoLevels);
@ -439,7 +439,7 @@ std::string CMapGenerator::getMapDescription() const
static_cast<int>(mapGenOptions.getCompOnlyPlayerCount()) % waterContentStr[mapGenOptions.getWaterContent()] %
monsterStrengthStr[mapGenOptions.getMonsterStrength()]);
BOOST_FOREACH(const auto & pair, mapGenOptions.getPlayersSettings())
for(const auto & pair : mapGenOptions.getPlayersSettings())
{
const auto & pSettings = pair.second;
if(pSettings.getPlayerType() == EPlayerType::HUMAN)
@ -492,7 +492,7 @@ void CMapGenerator::addPlayerInfo()
}
// Team numbers are assigned randomly to every player
BOOST_FOREACH(const auto & pair, mapGenOptions.getPlayersSettings())
for(const auto & pair : mapGenOptions.getPlayersSettings())
{
const auto & pSettings = pair.second;
PlayerInfo player;
@ -532,7 +532,7 @@ void CMapGenerator::genTowns()
PlayerColor owner(i);
int side = i % 2;
CGTownInstance * town = new CGTownInstance();
auto town = new CGTownInstance();
town->ID = Obj::TOWN;
int townId = mapGenOptions.getPlayersSettings().find(PlayerColor(i))->second.getStartingTown();
if(townId == CMapGenOptions::CPlayerSettings::RANDOM_TOWN) townId = gen.getInteger(0, 8); // Default towns
@ -740,7 +740,7 @@ std::set<ETerrainType> CRmgTemplateZone::getDefaultTerrainTypes() const
std::set<ETerrainType> terTypes;
static const ETerrainType::EETerrainType allowedTerTypes[] = { ETerrainType::DIRT, ETerrainType::SAND, ETerrainType::GRASS, ETerrainType::SNOW,
ETerrainType::SWAMP, ETerrainType::ROUGH, ETerrainType::SUBTERRANEAN, ETerrainType::LAVA };
for(int i = 0; i < ARRAY_COUNT(allowedTerTypes); ++i) terTypes.insert(allowedTerTypes[i]);
for(auto & allowedTerType : allowedTerTypes) terTypes.insert(allowedTerType);
return terTypes;
}
@ -967,7 +967,7 @@ void CRmgTemplate::CPlayerCountRange::addNumber(int value)
bool CRmgTemplate::CPlayerCountRange::isInRange(int count) const
{
BOOST_FOREACH(const auto & pair, range)
for(const auto & pair : range)
{
if(count >= pair.first && count <= pair.second) return true;
}
@ -977,7 +977,7 @@ bool CRmgTemplate::CPlayerCountRange::isInRange(int count) const
std::set<int> CRmgTemplate::CPlayerCountRange::getNumbers() const
{
std::set<int> numbers;
BOOST_FOREACH(const auto & pair, range)
for(const auto & pair : range)
{
for(int i = pair.first; i <= pair.second; ++i) numbers.insert(i);
}
@ -992,7 +992,7 @@ const std::map<std::string, CRmgTemplate> & CRmgTemplateLoader::getTemplates() c
void CJsonRmgTemplateLoader::loadTemplates()
{
const JsonNode rootNode(ResourceID("config/rmg.json"));
BOOST_FOREACH(const auto & templatePair, rootNode.Struct())
for(const auto & templatePair : rootNode.Struct())
{
CRmgTemplate tpl;
try
@ -1008,7 +1008,7 @@ void CJsonRmgTemplateLoader::loadTemplates()
// Parse zones
std::map<TRmgTemplateZoneId, CRmgTemplateZone> zones;
BOOST_FOREACH(const auto & zonePair, templateNode["zones"].Struct())
for(const auto & zonePair : templateNode["zones"].Struct())
{
CRmgTemplateZone zone;
auto zoneId = boost::lexical_cast<TRmgTemplateZoneId>(zonePair.first);
@ -1031,7 +1031,7 @@ void CJsonRmgTemplateLoader::loadTemplates()
// Parse connections
std::list<CRmgTemplateZoneConnection> connections;
BOOST_FOREACH(const auto & connPair, templateNode["connections"].Vector())
for(const auto & connPair : templateNode["connections"].Vector())
{
CRmgTemplateZoneConnection conn;
conn.setZoneA(boost::lexical_cast<TRmgTemplateZoneId>(connPair["a"].String()));
@ -1103,13 +1103,13 @@ CRmgTemplateZone::CTownInfo CJsonRmgTemplateLoader::parseTemplateZoneTowns(const
std::set<TFaction> CJsonRmgTemplateLoader::parseTownTypes(const JsonVector & townTypesVector, const std::set<TFaction> & defaultTownTypes) const
{
std::set<TFaction> townTypes;
BOOST_FOREACH(const auto & townTypeNode, townTypesVector)
for(const auto & townTypeNode : townTypesVector)
{
auto townTypeStr = townTypeNode.String();
if(townTypeStr == "all") return defaultTownTypes;
bool foundFaction = false;
BOOST_FOREACH(auto factionPtr, VLC->townh->factions)
for(auto factionPtr : VLC->townh->factions)
{
if(factionPtr->town != nullptr && townTypeStr == factionPtr->name)
{
@ -1125,7 +1125,7 @@ std::set<TFaction> CJsonRmgTemplateLoader::parseTownTypes(const JsonVector & tow
std::set<ETerrainType> CJsonRmgTemplateLoader::parseTerrainTypes(const JsonVector & terTypeStrings, const std::set<ETerrainType> & defaultTerrainTypes) const
{
std::set<ETerrainType> terTypes;
BOOST_FOREACH(const auto & node, terTypeStrings)
for(const auto & node : terTypeStrings)
{
const auto & terTypeStr = node.String();
if(terTypeStr == "all") return defaultTerrainTypes;
@ -1152,7 +1152,7 @@ CRmgTemplate::CPlayerCountRange CJsonRmgTemplateLoader::parsePlayers(const std::
}
std::vector<std::string> commaParts;
boost::split(commaParts, players, boost::is_any_of(","));
BOOST_FOREACH(const auto & commaPart, commaParts)
for(const auto & commaPart : commaParts)
{
std::vector<std::string> rangeParts;
boost::split(rangeParts, commaPart, boost::is_any_of("-"));