Skip to content

Commit

Permalink
Fixed build with /std:c++latest
Browse files Browse the repository at this point in the history
`requires` is a reserved keyword in C++20 related to the new Concepts stuff, so you can't have a function
named that. Also renamed `conflicts` to `does_conflict` for consistency with the new `does_require`.
  • Loading branch information
Vultraz committed Jan 23, 2021
1 parent 5df29bf commit a1cb45d
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 17 deletions.
30 changes: 15 additions & 15 deletions src/game_initialization/depcheck.cpp
Expand Up @@ -208,15 +208,15 @@ std::vector<std::string> manager::get_conflicting_enabled(const elem& e) const
std::vector<std::string> result;

for(const std::string& mod : mods_) {
if(conflicts(elem(mod, "modification"), e)) {
if(does_conflict(elem(mod, "modification"), e)) {
result.push_back(mod);
}
}

return result;
}

bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) const
bool manager::does_conflict(const elem& elem1, const elem& elem2, bool directonly) const
{
if(elem1 == elem2) {
return false;
Expand Down Expand Up @@ -258,7 +258,7 @@ bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) c
if(data1.has_attribute("allow_" + elem2.type)) {
std::vector<std::string> allowed = utils::split(data1["allow_" + elem2.type]);

result = !utils::contains(allowed, elem2.id) && !requires(elem1, elem2);
result = !utils::contains(allowed, elem2.id) && !does_require(elem1, elem2);
} else if(data1.has_attribute("disallow_" + elem2.type)) {
std::vector<std::string> disallowed = utils::split(data1["disallow_" + elem2.type]);

Expand All @@ -268,7 +268,7 @@ bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) c
if(data2.has_attribute("allow_" + elem1.type)) {
std::vector<std::string> allowed = utils::split(data2["allow_" + elem1.type]);

result = result || (!utils::contains(allowed, elem1.id) && !requires(elem2, elem1));
result = result || (!utils::contains(allowed, elem1.id) && !does_require(elem2, elem1));
} else if(data2.has_attribute("disallow_" + elem1.type)) {
std::vector<std::string> disallowed = utils::split(data2["disallow_" + elem1.type]);

Expand All @@ -286,15 +286,15 @@ bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) c
for(const std::string& s : req1) {
elem m(s, "modification");

if(conflicts(elem2, m, true)) {
if(does_conflict(elem2, m, true)) {
return true;
}
}

for(const std::string& s : req2) {
elem m(s, "modification");

if(conflicts(elem1, m, true)) {
if(does_conflict(elem1, m, true)) {
return true;
}
}
Expand All @@ -305,7 +305,7 @@ bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) c
for(const std::string& id2 : req2) {
elem m2(id2, "modification");

if(conflicts(m1, m2)) {
if(does_conflict(m1, m2)) {
return true;
}
}
Expand All @@ -315,7 +315,7 @@ bool manager::conflicts(const elem& elem1, const elem& elem2, bool directonly) c
return false;
}

bool manager::requires(const elem& elem1, const elem& elem2) const
bool manager::does_require(const elem& elem1, const elem& elem2) const
{
if(elem2.type != "modification") {
return false;
Expand Down Expand Up @@ -552,13 +552,13 @@ bool manager::change_scenario(const std::string& id)

// Now checking if the currently selected era conflicts the scenario
// and changing era if necessary
if(!conflicts(scen, elem(era_, "era"))) {
if(!does_conflict(scen, elem(era_, "era"))) {
return true;
}

std::vector<std::string> compatible;
for(const config& i : depinfo_.child_range("era")) {
if(!conflicts(scen, elem(i["id"], "era"))) {
if(!does_conflict(scen, elem(i["id"], "era"))) {
compatible.push_back(i["id"]);
}
}
Expand Down Expand Up @@ -620,13 +620,13 @@ bool manager::change_era(const std::string& id)

// Now checking if the currently selected scenario conflicts the era
// and changing scenario if necessary
if(!conflicts(era, elem(scenario_, "scenario"))) {
if(!does_conflict(era, elem(scenario_, "scenario"))) {
return true;
}

std::vector<std::string> compatible;
for(const config& i : depinfo_.child_range("scenario")) {
if(!conflicts(era, elem(i["id"], "scenario"))) {
if(!does_conflict(era, elem(i["id"], "scenario"))) {
compatible.push_back(i["id"]);
}
}
Expand Down Expand Up @@ -654,7 +654,7 @@ bool manager::change_modifications(const std::vector<std::string>& modifications
elem ei(i, "modification");

for(const std::string& j : filtered) {
ok = ok && !conflicts(ei, elem(j, "modification"));
ok = ok && !does_conflict(ei, elem(j, "modification"));
}

if(ok) {
Expand All @@ -677,7 +677,7 @@ bool manager::change_modifications(const std::vector<std::string>& modifications
bool ok = true;

for(const std::string& s : mods_) {
ok = ok && !conflicts(era, elem(s, "modification"));
ok = ok && !does_conflict(era, elem(s, "modification"));
}

if(ok) {
Expand Down Expand Up @@ -714,7 +714,7 @@ bool manager::change_modifications(const std::vector<std::string>& modifications
elem scen(c["id"], "scenario");
bool ok = true;
for(const std::string& s : mods_) {
ok = ok && !conflicts(scen, elem(s, "modification"));
ok = ok && !does_conflict(scen, elem(s, "modification"));
}

if(ok) {
Expand Down
4 changes: 2 additions & 2 deletions src/game_initialization/depcheck.hpp
Expand Up @@ -248,7 +248,7 @@ class manager
*
* @return true if e1 and e2 conflict, false if not
*/
bool conflicts(const elem& elem1, const elem& elem2, bool directonly=false) const;
bool does_conflict(const elem& elem1, const elem& elem2, bool directonly=false) const;

/**
* Decides whether e1 requires e2
Expand All @@ -260,7 +260,7 @@ class manager
*
* @return true if e2 is required by e1, false if not
*/
bool requires(const elem& elem1, const elem& elem2) const;
bool does_require(const elem& elem1, const elem& elem2) const;

/**
* Get the list of modifications required by a certain component
Expand Down

0 comments on commit a1cb45d

Please sign in to comment.