Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/utility
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2023-06-27 20:23:44 +1000
committerKae <80987908+Novaenia@users.noreply.github.com>2023-06-27 20:23:44 +1000
commit332983c97b7a729c4dc5f19aa9ee4a22c420f7d8 (patch)
treefd9c441b796b522bdd5c7f8fbd32f51b8eff2a28 /source/utility
parent14b9689b6d4f4ad5276c88130dc6e449bedc0709 (diff)
The Formatting String Catastrophe
Diffstat (limited to 'source/utility')
-rw-r--r--source/utility/asset_packer.cpp18
-rw-r--r--source/utility/asset_unpacker.cpp10
-rw-r--r--source/utility/dump_versioned_json.cpp4
-rw-r--r--source/utility/dungeon_generation_benchmark.cpp14
-rw-r--r--source/utility/fix_embedded_tilesets.cpp6
-rw-r--r--source/utility/game_repl.cpp4
-rw-r--r--source/utility/generation_benchmark.cpp10
-rw-r--r--source/utility/make_versioned_json.cpp4
-rw-r--r--source/utility/map_grep.cpp6
-rw-r--r--source/utility/planet_mapgen.cpp6
-rw-r--r--source/utility/render_terrain_selector.cpp4
-rw-r--r--source/utility/tileset_updater.cpp18
-rw-r--r--source/utility/update_tilesets.cpp6
-rw-r--r--source/utility/word_count.cpp8
-rw-r--r--source/utility/world_benchmark.cpp10
15 files changed, 64 insertions, 64 deletions
diff --git a/source/utility/asset_packer.cpp b/source/utility/asset_packer.cpp
index 7777264..7caf0aa 100644
--- a/source/utility/asset_packer.cpp
+++ b/source/utility/asset_packer.cpp
@@ -31,8 +31,8 @@ int main(int argc, char** argv) {
try {
configFileContents = File::readFileString(configFile);
} catch (IOException const& e) {
- cerrf("Could not open specified configFile: %s\n", configFile);
- cerrf("For the following reason: %s\n", outputException(e, false));
+ cerrf("Could not open specified configFile: {}\n", configFile);
+ cerrf("For the following reason: {}\n", outputException(e, false));
return 1;
}
@@ -40,8 +40,8 @@ int main(int argc, char** argv) {
try {
configFileJson = Json::parseJson(configFileContents);
} catch (JsonParsingException const& e) {
- cerrf("Could not parse the specified configFile: %s\n", configFile);
- cerrf("For the following reason: %s\n", outputException(e, false));
+ cerrf("Could not parse the specified configFile: {}\n", configFile);
+ cerrf("For the following reason: {}\n", outputException(e, false));
return 1;
}
@@ -51,8 +51,8 @@ int main(int argc, char** argv) {
ignoreFiles.appendAll(jsonToStringList(configFileJson.get("serverIgnore", JsonArray())));
extensionOrdering = jsonToStringList(configFileJson.get("extensionOrdering", JsonArray()));
} catch (JsonException const& e) {
- cerrf("Could not read the asset_packer config file %s\n", configFile);
- cerrf("%s\n", outputException(e, false));
+ cerrf("Could not read the asset_packer config file {}\n", configFile);
+ cerrf("{}\n", outputException(e, false));
return 1;
}
}
@@ -62,18 +62,18 @@ int main(int argc, char** argv) {
function<void(size_t, size_t, String, String, bool)> BuildProgressCallback;
auto progressCallback = [verbose](size_t, size_t, String filePath, String assetPath) {
if (verbose)
- coutf("Adding file '%s' to the target pak as '%s'\n", filePath, assetPath);
+ coutf("Adding file '{}' to the target pak as '{}'\n", filePath, assetPath);
};
outputFilename = File::relativeTo(File::fullPath(File::dirName(outputFilename)), File::baseName(outputFilename));
DirectoryAssetSource directorySource(assetsFolderPath, ignoreFiles);
PackedAssetSource::build(directorySource, outputFilename, extensionOrdering, progressCallback);
- coutf("Output packed assets to %s in %ss\n", outputFilename, Time::monotonicTime() - startTime);
+ coutf("Output packed assets to {} in {}s\n", outputFilename, Time::monotonicTime() - startTime);
return 0;
} catch (std::exception const& e) {
- cerrf("Exception caught: %s\n", outputException(e, true));
+ cerrf("Exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/asset_unpacker.cpp b/source/utility/asset_unpacker.cpp
index d4d4f6d..487d0b7 100644
--- a/source/utility/asset_unpacker.cpp
+++ b/source/utility/asset_unpacker.cpp
@@ -10,7 +10,7 @@ int main(int argc, char** argv) {
double startTime = Time::monotonicTime();
if (argc != 3) {
- cerrf("Usage: %s <assets pak path> <target output directory>\n", argv[0]);
+ cerrf("Usage: {} <assets pak path> <target output directory>\n", argv[0]);
cerrf("If the target output directory does not exist it will be created\n");
return 1;
}
@@ -35,8 +35,8 @@ int main(int argc, char** argv) {
File::makeDirectoryRecursive(relativeDir);
File::writeFile(fileData, relativePath);
} catch (AssetSourceException const& e) {
- cerrf("Could not open file: %s\n", file);
- cerrf("Reason: %s\n", outputException(e, false));
+ cerrf("Could not open file: {}\n", file);
+ cerrf("Reason: {}\n", outputException(e, false));
}
}
@@ -44,10 +44,10 @@ int main(int argc, char** argv) {
if (!metadata.empty())
File::writeFile(Json(move(metadata)).printJson(2), "_metadata");
- coutf("Unpacked assets to %s in %ss\n", outputFolderPath, Time::monotonicTime() - startTime);
+ coutf("Unpacked assets to {} in {}s\n", outputFolderPath, Time::monotonicTime() - startTime);
return 0;
} catch (std::exception const& e) {
- cerrf("Exception caught: %s\n", outputException(e, true));
+ cerrf("Exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/dump_versioned_json.cpp b/source/utility/dump_versioned_json.cpp
index 2672548..24ef482 100644
--- a/source/utility/dump_versioned_json.cpp
+++ b/source/utility/dump_versioned_json.cpp
@@ -6,7 +6,7 @@ using namespace Star;
int main(int argc, char** argv) {
try {
if (argc != 3) {
- coutf("Usage, %s <versioned_json_binary> <versioned_json_json>\n", argv[0]);
+ coutf("Usage, {} <versioned_json_binary> <versioned_json_json>\n", argv[0]);
return -1;
}
@@ -14,7 +14,7 @@ int main(int argc, char** argv) {
File::writeFile(versionedJson.toJson().printJson(2), argv[2]);
return 0;
} catch (std::exception const& e) {
- coutf("Error! Caught exception %s\n", outputException(e, true));
+ coutf("Error! Caught exception {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/dungeon_generation_benchmark.cpp b/source/utility/dungeon_generation_benchmark.cpp
index a67cb02..70cbe9e 100644
--- a/source/utility/dungeon_generation_benchmark.cpp
+++ b/source/utility/dungeon_generation_benchmark.cpp
@@ -12,9 +12,9 @@ int main(int argc, char** argv) {
String dungeonWorldName = "outpost";
RootLoader rootLoader({{}, {}, {}, LogLevel::Error, false, {}});
- rootLoader.addParameter("dungeonWorld", "dungeonWorld", OptionParser::Optional, strf("dungeonWorld to test, default is %s", dungeonWorldName));
- rootLoader.addParameter("repetitions", "repetitions", OptionParser::Optional, strf("number of times to generate, default %s", repetitions));
- rootLoader.addParameter("reportevery", "report repetitions", OptionParser::Optional, strf("number of repetitions before each progress report, default %s", reportEvery));
+ rootLoader.addParameter("dungeonWorld", "dungeonWorld", OptionParser::Optional, strf("dungeonWorld to test, default is {}", dungeonWorldName));
+ rootLoader.addParameter("repetitions", "repetitions", OptionParser::Optional, strf("number of times to generate, default {}", repetitions));
+ rootLoader.addParameter("reportevery", "report repetitions", OptionParser::Optional, strf("number of repetitions before each progress report, default {}", reportEvery));
RootUPtr root;
OptionParser::Options options;
@@ -36,13 +36,13 @@ int main(int argc, char** argv) {
double start = Time::monotonicTime();
double lastReport = Time::monotonicTime();
- coutf("testing %s generations of dungeonWorld %s\n", repetitions, dungeonWorldName);
+ coutf("testing {} generations of dungeonWorld {}\n", repetitions, dungeonWorldName);
for (unsigned i = 0; i < repetitions; ++i) {
if (i > 0 && i % reportEvery == 0) {
float gps = reportEvery / (Time::monotonicTime() - lastReport);
lastReport = Time::monotonicTime();
- coutf("[%s] %ss | Generations Per Second: %s\n", i, Time::monotonicTime() - start, gps);
+ coutf("[{}] {}s | Generations Per Second: {}\n", i, Time::monotonicTime() - start, gps);
}
VisitableWorldParametersPtr worldParameters = generateFloatingDungeonWorldParameters(dungeonWorldName);
@@ -50,12 +50,12 @@ int main(int argc, char** argv) {
WorldServer worldServer(move(worldTemplate), File::ephemeralFile());
}
- coutf("Finished %s generations of dungeonWorld %s in %s seconds", repetitions, dungeonWorldName, Time::monotonicTime() - start);
+ coutf("Finished {} generations of dungeonWorld {} in {} seconds", repetitions, dungeonWorldName, Time::monotonicTime() - start);
return 0;
} catch (std::exception const& e) {
- cerrf("Exception caught: %s\n", outputException(e, true));
+ cerrf("Exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/fix_embedded_tilesets.cpp b/source/utility/fix_embedded_tilesets.cpp
index 262426d..8f49db7 100644
--- a/source/utility/fix_embedded_tilesets.cpp
+++ b/source/utility/fix_embedded_tilesets.cpp
@@ -38,7 +38,7 @@ Maybe<Json> repairTileset(Json tileset, String const& mapPath, String const& til
String tilesetName = tileset.getString("name");
String tilesetFileName = File::relativeTo(tilesetPath, tilesetName + ".json");
if (!File::exists(tilesetFileName))
- throw StarException::format("Tileset %s does not exist. Can't repair %s", tilesetFileName, mapPath);
+ throw StarException::format("Tileset {} does not exist. Can't repair {}", tilesetFileName, mapPath);
return {JsonObject{{"firstgid", firstGid}, {"source", createRelativePath(mapPath, tilesetFileName)}}};
}
@@ -71,7 +71,7 @@ void fixEmbeddedTilesets(String const& searchRoot, String const& tilesetPath) {
if (json.contains("tilesets")) {
if (Maybe<Json> fixed = repair(json, path, tilesetPath)) {
File::writeFile(fixed->repr(2, true), path);
- Logger::info("Repaired %s", path);
+ Logger::info("Repaired {}", path);
}
}
});
@@ -95,7 +95,7 @@ int main(int argc, char* argv[]) {
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/game_repl.cpp b/source/utility/game_repl.cpp
index e52fb07..3ffc300 100644
--- a/source/utility/game_repl.cpp
+++ b/source/utility/game_repl.cpp
@@ -40,12 +40,12 @@ int main(int argc, char** argv) {
try {
auto result = context.eval<LuaVariadic<LuaValue>>(code);
for (auto r : result)
- coutf("%s\n", r);
+ coutf("{}\n", r);
continuation = false;
} catch (LuaIncompleteStatementException const&) {
continuation = true;
} catch (std::exception const& e) {
- coutf("Error: %s\n", outputException(e, false));
+ coutf("Error: {}\n", outputException(e, false));
continuation = false;
}
}
diff --git a/source/utility/generation_benchmark.cpp b/source/utility/generation_benchmark.cpp
index f3f2f97..8e1631c 100644
--- a/source/utility/generation_benchmark.cpp
+++ b/source/utility/generation_benchmark.cpp
@@ -44,7 +44,7 @@ int main(int argc, char** argv) {
if (auto reportEveryOption = options.parameters.maybe("reportevery"))
reportEvery = lexicalCast<unsigned>(reportEveryOption->first());
- coutf("testing generation on coordinate %s\n", coordinate);
+ coutf("testing generation on coordinate {}\n", coordinate);
auto worldParameters = celestialDatabase.parameters(coordinate).take();
auto worldTemplate = make_shared<WorldTemplate>(worldParameters.visitableParameters(), SkyParameters(), worldParameters.seed());
@@ -57,25 +57,25 @@ int main(int argc, char** argv) {
double start = Time::monotonicTime();
double lastReport = Time::monotonicTime();
- coutf("Starting world generation for %s regions\n", regionsToGenerate);
+ coutf("Starting world generation for {} regions\n", regionsToGenerate);
for (unsigned i = 0; i < regionsToGenerate; ++i) {
if (i != 0 && i % reportEvery == 0) {
float gps = reportEvery / (Time::monotonicTime() - lastReport);
lastReport = Time::monotonicTime();
- coutf("[%s] %ss | Generatons Per Second: %s\n", i, Time::monotonicTime() - start, gps);
+ coutf("[{}] {}s | Generatons Per Second: {}\n", i, Time::monotonicTime() - start, gps);
}
RectI region = RectI::withCenter(Vec2I(rand.randInt(0, worldSize[0]), rand.randInt(0, worldSize[1])), Vec2I::filled(regionSize));
worldServer.generateRegion(region);
}
- coutf("Finished generating %s regions with size %sx%s in world '%s' in %s seconds", regionsToGenerate, regionSize, regionSize, coordinate, Time::monotonicTime() - start);
+ coutf("Finished generating {} regions with size {}x{} in world '{}' in {} seconds", regionsToGenerate, regionSize, regionSize, coordinate, Time::monotonicTime() - start);
return 0;
} catch (std::exception const& e) {
- cerrf("Exception caught: %s\n", outputException(e, true));
+ cerrf("Exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/make_versioned_json.cpp b/source/utility/make_versioned_json.cpp
index 560f532..478e7f6 100644
--- a/source/utility/make_versioned_json.cpp
+++ b/source/utility/make_versioned_json.cpp
@@ -6,7 +6,7 @@ using namespace Star;
int main(int argc, char** argv) {
try {
if (argc != 3) {
- coutf("Usage, %s <versioned_json_json> <versioned_json_binary>\n", argv[0]);
+ coutf("Usage, {} <versioned_json_json> <versioned_json_binary>\n", argv[0]);
return -1;
}
@@ -14,7 +14,7 @@ int main(int argc, char** argv) {
VersionedJson::writeFile(versionedJson, argv[2]);
return 0;
} catch (std::exception const& e) {
- coutf("Error! Caught exception %s\n", outputException(e, true));
+ coutf("Error! Caught exception {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/map_grep.cpp b/source/utility/map_grep.cpp
index 03083e0..9f8bb00 100644
--- a/source/utility/map_grep.cpp
+++ b/source/utility/map_grep.cpp
@@ -57,12 +57,12 @@ void grepMap(SearchParameters const& search, String file) {
for (auto tileLayer : map->tileLayers())
grepTileLayer(search, map, tileLayer, [&](String const& tileName, Vec2I const& pos) {
- coutf("%s: %s: %s @ %s\n", file, tileLayer->name(), tileName, pos);
+ coutf("{}: {}: {} @ {}\n", file, tileLayer->name(), tileName, pos);
});
for (auto objectGroup : map->objectGroups())
grepObjectGroup(search, objectGroup, [&](String const& tileName, Vec2I const& pos) {
- coutf("%s: %s: %s @ %s\n", file, objectGroup->name(), tileName, pos);
+ coutf("{}: {}: {} @ {}\n", file, objectGroup->name(), tileName, pos);
});
}
@@ -110,7 +110,7 @@ int main(int argc, char* argv[]) {
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/planet_mapgen.cpp b/source/utility/planet_mapgen.cpp
index 7bc9f8d..327c7a8 100644
--- a/source/utility/planet_mapgen.cpp
+++ b/source/utility/planet_mapgen.cpp
@@ -38,7 +38,7 @@ int main(int argc, char** argv) {
if (!coordinate)
throw StarException("Could not find world to generate, try again");
- coutf("Generating world with coordinate %s\n", *coordinate);
+ coutf("Generating world with coordinate {}\n", *coordinate);
WorldTemplate worldTemplate(*coordinate, celestialDatabase);
auto size = worldTemplate.size();
@@ -51,7 +51,7 @@ int main(int argc, char** argv) {
size[0] = 1000;
}
- coutf("Generating %s size image for world of type '%s'\n", size, worldTemplate.worldParameters()->typeName);
+ coutf("Generating {} size image for world of type '{}'\n", size, worldTemplate.worldParameters()->typeName);
auto outputImage = make_shared<Image>(size, PixelFormat::RGB24);
Color groundColor = Color::rgb(255, 0, 0);
@@ -111,7 +111,7 @@ int main(int argc, char** argv) {
outputImage->writePng(File::open("mapgen.png", IOMode::Write));
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/render_terrain_selector.cpp b/source/utility/render_terrain_selector.cpp
index a9e508a..570f6c0 100644
--- a/source/utility/render_terrain_selector.cpp
+++ b/source/utility/render_terrain_selector.cpp
@@ -67,7 +67,7 @@ int main(int argc, char** argv) {
}
}
- coutf("Generating %s size image for selector with scale %s\n", size, scale);
+ coutf("Generating {} size image for selector with scale {}\n", size, scale);
auto outputImage = make_shared<Image>(size, PixelFormat::RGB24);
for (size_t x = 0; x < size[0]; ++x) {
@@ -90,7 +90,7 @@ int main(int argc, char** argv) {
outputImage->writePng(File::open("terrain.png", IOMode::Write));
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/tileset_updater.cpp b/source/utility/tileset_updater.cpp
index e94ac53..9c3e252 100644
--- a/source/utility/tileset_updater.cpp
+++ b/source/utility/tileset_updater.cpp
@@ -72,7 +72,7 @@ void Tileset::exportTileset() const {
String exportDir = tilesetExportDir(sourcePath, sourceName);
String tilesetPath = unixFileJoin(exportDir, m_name + ".json");
File::makeDirectoryRecursive(File::dirName(tilesetPath));
- Logger::info("Updating tileset at %s", tilesetPath);
+ Logger::info("Updating tileset at {}", tilesetPath);
exportTilesetImages(exportDir);
@@ -156,7 +156,7 @@ void Tileset::exportTilesetImages(String const& exportDir) const {
String imageDir = unixFileJoin(imageDirName(exportDir), tile->database);
File::makeDirectoryRecursive(imageDir);
String imageName = unixFileJoin(imageDir, tile->name + ".png");
- Logger::info("Updating image %s", imageName);
+ Logger::info("Updating image {}", imageName);
tile->image->writePng(File::open(imageName, IOMode::Write));
}
}
@@ -166,7 +166,7 @@ Json Tileset::getTilesetJson(String const& tilesetPath) const {
return Json::parseJson(File::readFileString(tilesetPath));
} else {
Logger::warn(
- "Tileset %s wasn't already present. Creating it from scratch. Any maps already using this tileset may be "
+ "Tileset {} wasn't already present. Creating it from scratch. Any maps already using this tileset may be "
"broken.",
tilesetPath);
return JsonObject{{"margin", 0},
@@ -208,7 +208,7 @@ StringSet Tileset::updateTiles(JsonObject& tileProperties,
if (existingTiles.contains(tile->name)) {
id = existingTiles.get(tile->name);
} else {
- coutf("Adding '%s' to %s\n", tile->name, tilesetPath);
+ coutf("Adding '{}' to {}\n", tile->name, tilesetPath);
id = nextId++;
}
@@ -235,7 +235,7 @@ void Tileset::invalidateTiles(StringSet const& invalidTiles,
tileImages[toString(id)] = tileImageReference(tile->name, tile->database);
} else {
if (!tileProperties[toString(id)].contains("invalid"))
- coutf("Removing '%s' from %s\n", tileName, tilesetPath);
+ coutf("Removing '{}' from {}\n", tileName, tilesetPath);
tileProperties[toString(id)] = JsonObject{{"//name", tileName}, {"invalid", "true"}};
tileImages[toString(id)] = imageFileReference(InvalidTileImage);
}
@@ -254,7 +254,7 @@ void TilesetUpdater::defineAssetSource(String const& source) {
String tilesetDir = tilesetExportDir(sourcePath, sourceName);
String imageDir = imageExportDirName(tilesetDir, sourceName);
- Logger::info("Scanning %s for images...", imageDir);
+ Logger::info("Scanning {} for images...", imageDir);
if (!File::isDirectory(imageDir))
return;
@@ -262,7 +262,7 @@ void TilesetUpdater::defineAssetSource(String const& source) {
if (entry.second) {
String databaseName = entry.first;
String databasePath = unixFileJoin(imageDir, databaseName);
- Logger::info("Scanning database %s...", databaseName);
+ Logger::info("Scanning database {}...", databaseName);
for (pair<String, bool> image : File::dirList(databasePath)) {
starAssert(!image.second);
starAssert(image.first.endsWith(".png"));
@@ -282,7 +282,7 @@ void TilesetUpdater::exportTilesets() {
for (auto const& tilesets : m_tilesets) {
auto parsedAssetSource = parseAssetSource(tilesets.first);
if (!parsedAssetSource) {
- Logger::info("Not updating tilesets in %s because it is packed", tilesets.first);
+ Logger::info("Not updating tilesets in {} because it is packed", tilesets.first);
continue;
}
String sourceName;
@@ -302,7 +302,7 @@ void TilesetUpdater::exportTilesets() {
for (String tileName : unusedImages) {
String tileImagePath = unixFileJoin(databaseImagePath, tileName + ".png");
starAssert(File::isFile(tileImagePath));
- coutf("Removing unused tile image tiled/%s/%s/%s.png\n", sourceName, database->name(), tileName);
+ coutf("Removing unused tile image tiled/{}/{}/{}.png\n", sourceName, database->name(), tileName);
File::remove(tileImagePath);
}
m_preexistingImages[sourceName][database->name()] = database->tileNames();
diff --git a/source/utility/update_tilesets.cpp b/source/utility/update_tilesets.cpp
index e5b850b..3d689ba 100644
--- a/source/utility/update_tilesets.cpp
+++ b/source/utility/update_tilesets.cpp
@@ -179,7 +179,7 @@ void scanObjects(TilesetUpdater& updater) {
for (String const& objectName : objects->allObjects()) {
auto orientations = objects->getOrientations(objectName);
if (orientations.size() < 1) {
- Logger::warn("Object %s has no orientations and will not be exported", objectName);
+ Logger::warn("Object {} has no orientations and will not be exported", objectName);
continue;
}
@@ -244,7 +244,7 @@ int main(int argc, char** argv) {
TilesetUpdater updater;
for (String source : root->assets()->assetSources()) {
- Logger::info("Assets source: \"%s\"", source);
+ Logger::info("Assets source: \"{}\"", source);
updater.defineAssetSource(source);
}
@@ -256,7 +256,7 @@ int main(int argc, char** argv) {
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/word_count.cpp b/source/utility/word_count.cpp
index 683a3a9..d233b8c 100644
--- a/source/utility/word_count.cpp
+++ b/source/utility/word_count.cpp
@@ -31,7 +31,7 @@ int main(int argc, char** argv) {
if (json.isNull())
continue;
- String countKey = wordCountKey ? *wordCountKey : strf(".%s files", type);
+ String countKey = wordCountKey ? *wordCountKey : strf(".{} files", type);
wordCounts[countKey] += countFunction(json);
}
};
@@ -178,14 +178,14 @@ int main(int argc, char** argv) {
int totalWordCount = 0;
for (auto countPair : wordCounts) {
- coutf("%d words in %s\n", countPair.second, countPair.first);
+ coutf("{} words in {}\n", countPair.second, countPair.first);
totalWordCount += countPair.second;
}
- coutf("approximately %s words total\n", totalWordCount);
+ coutf("approximately {} words total\n", totalWordCount);
return 0;
} catch (std::exception const& e) {
- cerrf("exception caught: %s\n", outputException(e, true));
+ cerrf("exception caught: {}\n", outputException(e, true));
return 1;
}
}
diff --git a/source/utility/world_benchmark.cpp b/source/utility/world_benchmark.cpp
index d9efe45..40476a1 100644
--- a/source/utility/world_benchmark.cpp
+++ b/source/utility/world_benchmark.cpp
@@ -63,7 +63,7 @@ int main(int argc, char** argv) {
for (uint64_t i = 0; i < times; ++i) {
WorldServer worldServer(worldTemplate, File::ephemeralFile());
- coutf("Starting world simulation for %s steps\n", steps);
+ coutf("Starting world simulation for {} steps\n", steps);
double start = Time::monotonicTime();
double lastReport = Time::monotonicTime();
uint64_t entityCount = 0;
@@ -79,23 +79,23 @@ int main(int argc, char** argv) {
if (reportEvery != 0 && j % reportEvery == 0) {
float fps = reportEvery / (Time::monotonicTime() - lastReport);
lastReport = Time::monotonicTime();
- coutf("[%s] %ss | FPS: %s | Entities: %s\n", j, Time::monotonicTime() - start, fps, entityCount);
+ coutf("[{}] {}s | FPS: {} | Entities: {}\n", j, Time::monotonicTime() - start, fps, entityCount);
}
worldServer.update();
}
double totalTime = Time::monotonicTime() - start;
- coutf("Finished run of running dungeon world '%s' with seed %s for %s steps in %s seconds, average FPS: %s\n",
+ coutf("Finished run of running dungeon world '{}' with seed {} for {} steps in {} seconds, average FPS: {}\n",
dungeon, worldSeed, steps, totalTime, steps / totalTime);
sumTime += totalTime;
}
if (times != 1) {
- coutf("Average of all runs - time: %s, FPS: %s\n", sumTime / times, steps / (sumTime / times));
+ coutf("Average of all runs - time: {}, FPS: {}\n", sumTime / times, steps / (sumTime / times));
}
return 0;
} catch (std::exception const& e) {
- cerrf("Exception caught: %s\n", outputException(e, true));
+ cerrf("Exception caught: {}\n", outputException(e, true));
return 1;
}
}