mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-23 22:37:55 +02:00
Replace redundant types with auto for the lvalues of template factory functions for smart pointers
grep -r --include \*.h --include \*.cpp "= std::" * | grep -v auto | grep -Po ".*[^ ]+ [^ ]+ [^ ]*[ ]*=.*;" | grep -v "auto\|int\|char\|bool\|float|\double\|for\|if\|googletest\|fuzzylite\|size_t\|using\|return" | grep -v double | grep -v si64 | grep -v si32 | grep -v ui32 | grep \< | grep -v float | tr -d '\t' | grep -v assert > redundant_types.txt
import re
with open("redundant_types.txt") as f:
for line in f:
line = line.strip()
path = line.split(":", 1)[0]
original_code = ":".join(line.split(":")[1:]).strip()
print()
print(path)
print(original_code)
prefix = "auto "
if original_code.startswith("static"):
static = True
else:
static = False
cpp_type = " ".join(original_code.split("=")[0].strip().split(" ")[0:-1])
print(cpp_type)
if static:
new_code = "static auto "+ " ".join(original_code.split(" ")[2:])
else:
new_code = "auto "+ " ".join(original_code.split(" ")[1:])
print(new_code)
if True:
with open(path, "r") as f:
filedata = f.read()
filedata = filedata.replace(original_code, new_code)
with open(path, "w") as f:
f.write(filedata)
This commit is contained in:
@@ -225,7 +225,7 @@ std::vector<JsonNode> ScriptHandler::loadLegacyData()
|
||||
ScriptPtr ScriptHandler::loadFromJson(vstd::CLoggerBase * logger, const std::string & scope,
|
||||
const JsonNode & json, const std::string & identifier) const
|
||||
{
|
||||
ScriptPtr ret = std::make_shared<ScriptImpl>(this);
|
||||
auto ret = std::make_shared<ScriptImpl>(this);
|
||||
|
||||
JsonDeserializer handler(nullptr, json);
|
||||
ret->identifier = identifier;
|
||||
@@ -279,7 +279,7 @@ void ScriptHandler::loadState(const JsonNode & state)
|
||||
|
||||
const JsonNode & scriptData = keyValue.second;
|
||||
|
||||
ScriptPtr script = std::make_shared<ScriptImpl>(this);
|
||||
auto script = std::make_shared<ScriptImpl>(this);
|
||||
|
||||
JsonDeserializer handler(nullptr, scriptData);
|
||||
script->serializeJsonState(handler);
|
||||
|
||||
Reference in New Issue
Block a user