From 55ab4264dc3f42a4588de0cf52e8f0f88e4fd90e Mon Sep 17 00:00:00 2001 From: Loic Blot Date: Fri, 18 Aug 2017 07:44:42 +0200 Subject: [PATCH] Modernize various files * range-based for loops * emplace_back instead of push_back * code style * C++ headers instead of C headers * Default operators * empty stl function --- src/face_position_cache.cpp | 74 ++++++++++++++++++------------------ src/filecache.cpp | 2 +- src/filesys.cpp | 76 +++++++++++++++++-------------------- src/filesys.h | 4 +- src/fontengine.h | 23 ++++------- src/genericobject.cpp | 7 ++-- src/gettext.cpp | 4 +- src/guiMainMenu.h | 4 +- src/guiPathSelectMenu.cpp | 4 +- src/guiTable.cpp | 2 +- src/guiscalingfilter.cpp | 16 ++++---- src/guiscalingfilter.h | 2 +- 12 files changed, 100 insertions(+), 118 deletions(-) diff --git a/src/face_position_cache.cpp b/src/face_position_cache.cpp index e6dd12170..7a8f235fa 100644 --- a/src/face_position_cache.cpp +++ b/src/face_position_cache.cpp @@ -40,39 +40,39 @@ const std::vector &FacePositionCache::generateFacePosition(u16 d) cache[d] = std::vector(); std::vector &c = cache[d]; if (d == 0) { - c.push_back(v3s16(0,0,0)); + c.emplace_back(0,0,0); return c; } if (d == 1) { // This is an optimized sequence of coordinates. - c.push_back(v3s16( 0, 1, 0)); // Top - c.push_back(v3s16( 0, 0, 1)); // Back - c.push_back(v3s16(-1, 0, 0)); // Left - c.push_back(v3s16( 1, 0, 0)); // Right - c.push_back(v3s16( 0, 0,-1)); // Front - c.push_back(v3s16( 0,-1, 0)); // Bottom + c.emplace_back(0, 1, 0); // Top + c.emplace_back(0, 0, 1); // Back + c.emplace_back(-1, 0, 0); // Left + c.emplace_back(1, 0, 0); // Right + c.emplace_back(0, 0,-1); // Front + c.emplace_back(0,-1, 0); // Bottom // 6 - c.push_back(v3s16(-1, 0, 1)); // Back left - c.push_back(v3s16( 1, 0, 1)); // Back right - c.push_back(v3s16(-1, 0,-1)); // Front left - c.push_back(v3s16( 1, 0,-1)); // Front right - c.push_back(v3s16(-1,-1, 0)); // Bottom left - c.push_back(v3s16( 1,-1, 0)); // Bottom right - c.push_back(v3s16( 0,-1, 1)); // Bottom back - c.push_back(v3s16( 0,-1,-1)); // Bottom front - c.push_back(v3s16(-1, 1, 0)); // Top left - c.push_back(v3s16( 1, 1, 0)); // Top right - c.push_back(v3s16( 0, 1, 1)); // Top back - c.push_back(v3s16( 0, 1,-1)); // Top front + c.emplace_back(-1, 0, 1); // Back left + c.emplace_back(1, 0, 1); // Back right + c.emplace_back(-1, 0,-1); // Front left + c.emplace_back(1, 0,-1); // Front right + c.emplace_back(-1,-1, 0); // Bottom left + c.emplace_back(1,-1, 0); // Bottom right + c.emplace_back(0,-1, 1); // Bottom back + c.emplace_back(0,-1,-1); // Bottom front + c.emplace_back(-1, 1, 0); // Top left + c.emplace_back(1, 1, 0); // Top right + c.emplace_back(0, 1, 1); // Top back + c.emplace_back(0, 1,-1); // Top front // 18 - c.push_back(v3s16(-1, 1, 1)); // Top back-left - c.push_back(v3s16( 1, 1, 1)); // Top back-right - c.push_back(v3s16(-1, 1,-1)); // Top front-left - c.push_back(v3s16( 1, 1,-1)); // Top front-right - c.push_back(v3s16(-1,-1, 1)); // Bottom back-left - c.push_back(v3s16( 1,-1, 1)); // Bottom back-right - c.push_back(v3s16(-1,-1,-1)); // Bottom front-left - c.push_back(v3s16( 1,-1,-1)); // Bottom front-right + c.emplace_back(-1, 1, 1); // Top back-left + c.emplace_back(1, 1, 1); // Top back-right + c.emplace_back(-1, 1,-1); // Top front-left + c.emplace_back(1, 1,-1); // Top front-right + c.emplace_back(-1,-1, 1); // Bottom back-left + c.emplace_back(1,-1, 1); // Bottom back-right + c.emplace_back(-1,-1,-1); // Bottom front-left + c.emplace_back(1,-1,-1); // Bottom front-right // 26 return c; } @@ -81,20 +81,20 @@ const std::vector &FacePositionCache::generateFacePosition(u16 d) for (s16 y = 0; y <= d - 1; y++) { // Left and right side, including borders for (s16 z =- d; z <= d; z++) { - c.push_back(v3s16( d, y, z)); - c.push_back(v3s16(-d, y, z)); + c.emplace_back(d, y, z); + c.emplace_back(-d, y, z); if (y != 0) { - c.push_back(v3s16( d, -y, z)); - c.push_back(v3s16(-d, -y, z)); + c.emplace_back(d, -y, z); + c.emplace_back(-d, -y, z); } } // Back and front side, excluding borders for (s16 x = -d + 1; x <= d - 1; x++) { - c.push_back(v3s16(x, y, d)); - c.push_back(v3s16(x, y, -d)); + c.emplace_back(x, y, d); + c.emplace_back(x, y, -d); if (y != 0) { - c.push_back(v3s16(x, -y, d)); - c.push_back(v3s16(x, -y, -d)); + c.emplace_back(x, -y, d); + c.emplace_back(x, -y, -d); } } } @@ -103,8 +103,8 @@ const std::vector &FacePositionCache::generateFacePosition(u16 d) // -d < x < d, y = +-d, -d < z < d for (s16 x = -d; x <= d; x++) for (s16 z = -d; z <= d; z++) { - c.push_back(v3s16(x, -d, z)); - c.push_back(v3s16(x, d, z)); + c.emplace_back(x, -d, z); + c.emplace_back(x, d, z); } return c; } diff --git a/src/filecache.cpp b/src/filecache.cpp index f1694d8d5..3d1b302a8 100644 --- a/src/filecache.cpp +++ b/src/filecache.cpp @@ -26,7 +26,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include #include -#include +#include bool FileCache::loadByPath(const std::string &path, std::ostream &os) { diff --git a/src/filesys.cpp b/src/filesys.cpp index bd8b94aff..d965384a2 100644 --- a/src/filesys.cpp +++ b/src/filesys.cpp @@ -20,9 +20,9 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "filesys.h" #include "util/string.h" #include -#include -#include -#include +#include +#include +#include #include #include "log.h" #include "config.h" @@ -246,7 +246,7 @@ std::vector GetDirListing(const std::string &pathstring) If so, try stat(). */ if(isdir == -1) { - struct stat statbuf; + struct stat statbuf{}; if (stat((pathstring + "/" + node.name).c_str(), &statbuf)) continue; isdir = ((statbuf.st_mode & S_IFDIR) == S_IFDIR); @@ -262,22 +262,20 @@ std::vector GetDirListing(const std::string &pathstring) bool CreateDir(const std::string &path) { int r = mkdir(path.c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH); - if(r == 0) - { + if (r == 0) { return true; } - else - { - // If already exists, return true - if(errno == EEXIST) - return true; - return false; - } + + // If already exists, return true + if (errno == EEXIST) + return true; + return false; + } bool PathExists(const std::string &path) { - struct stat st; + struct stat st{}; return (stat(path.c_str(),&st) == 0); } @@ -288,7 +286,7 @@ bool IsPathAbsolute(const std::string &path) bool IsDir(const std::string &path) { - struct stat statbuf; + struct stat statbuf{}; if(stat(path.c_str(), &statbuf)) return false; // Actually error; but certainly not a directory return ((statbuf.st_mode & S_IFDIR) == S_IFDIR); @@ -347,19 +345,19 @@ bool RecursiveDelete(const std::string &path) bool DeleteSingleFileOrEmptyDirectory(const std::string &path) { - if(IsDir(path)){ + if (IsDir(path)) { bool did = (rmdir(path.c_str()) == 0); - if(!did) - errorstream<<"rmdir errno: "< &dst) { std::vector content = GetDirListing(path); - for(unsigned int i=0; i list = GetDirListing(path); - for(unsigned int i=0; i content = fs::GetDirListing(source); - for(unsigned int i=0; i < content.size(); i++){ - std::string sourcechild = source + DIR_DELIM + content[i].name; - std::string targetchild = target + DIR_DELIM + content[i].name; - if(content[i].dir){ + for (const auto &dln : content) { + std::string sourcechild = source + DIR_DELIM + dln.name; + std::string targetchild = target + DIR_DELIM + dln.name; + if(dln.dir){ if(!fs::CopyDir(sourcechild, targetchild)){ retval = false; } @@ -526,9 +521,8 @@ bool CopyDir(const std::string &source, const std::string &target) } return retval; } - else { - return false; - } + + return false; } bool PathStartsWith(const std::string &path, const std::string &prefix) diff --git a/src/filesys.h b/src/filesys.h index 58846a265..5f246e387 100644 --- a/src/filesys.h +++ b/src/filesys.h @@ -26,12 +26,12 @@ with this program; if not, write to the Free Software Foundation, Inc., #ifdef _WIN32 // WINDOWS #define DIR_DELIM "\\" #define DIR_DELIM_CHAR '\\' -#define FILESYS_CASE_INSENSITIVE 1 +#define FILESYS_CASE_INSENSITIVE true #define PATH_DELIM ";" #else // POSIX #define DIR_DELIM "/" #define DIR_DELIM_CHAR '/' -#define FILESYS_CASE_INSENSITIVE 0 +#define FILESYS_CASE_INSENSITIVE false #define PATH_DELIM ":" #endif diff --git a/src/fontengine.h b/src/fontengine.h index 0719edfc4..a75618f86 100644 --- a/src/fontengine.h +++ b/src/fontengine.h @@ -21,9 +21,10 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include -#include "IGUIFont.h" -#include "IGUISkin.h" -#include "IGUIEnvironment.h" +#include "util/basic_macros.h" +#include +#include +#include #include "settings.h" #define FONT_SIZE_UNSPECIFIED 0xFFFFFFFF @@ -81,17 +82,6 @@ public: void readSettings(); private: - /** disable copy constructor */ - FontEngine() : - m_settings(NULL), - m_env(NULL), - m_font_cache(), - m_currentMode(FM_Standard), - m_lastMode(), - m_lastSize(0), - m_lastFont(NULL) - {}; - /** update content of font cache in case of a setting change made it invalid */ void updateFontCache(); @@ -108,10 +98,10 @@ private: void cleanCache(); /** pointer to settings for registering callbacks or reading config */ - Settings* m_settings; + Settings* m_settings = nullptr; /** pointer to irrlicht gui environment */ - gui::IGUIEnvironment* m_env; + gui::IGUIEnvironment* m_env = nullptr; /** internal storage for caching fonts of different size */ std::map m_font_cache[FM_MaxMode]; @@ -131,6 +121,7 @@ private: /** last font returned */ irr::gui::IGUIFont* m_lastFont = nullptr; + DISABLE_CLASS_COPY(FontEngine); }; /** interface to access main font engine*/ diff --git a/src/genericobject.cpp b/src/genericobject.cpp index 58f4b997e..15977b0e0 100644 --- a/src/genericobject.cpp +++ b/src/genericobject.cpp @@ -109,10 +109,9 @@ std::string gob_cmd_update_armor_groups(const ItemGroupList &armor_groups) std::ostringstream os(std::ios::binary); writeU8(os, GENERIC_CMD_UPDATE_ARMOR_GROUPS); writeU16(os, armor_groups.size()); - for(ItemGroupList::const_iterator i = armor_groups.begin(); - i != armor_groups.end(); ++i){ - os<first); - writeS16(os, i->second); + for (const auto &armor_group : armor_groups) { + os< -#include +#include #include -#include +#include #include "gettext.h" #include "util/string.h" #include "log.h" diff --git a/src/guiMainMenu.h b/src/guiMainMenu.h index 0bc5c7be1..43a3b1a33 100644 --- a/src/guiMainMenu.h +++ b/src/guiMainMenu.h @@ -26,7 +26,7 @@ with this program; if not, write to the Free Software Foundation, Inc., struct MainMenuDataForScript { - MainMenuDataForScript() {} + MainMenuDataForScript() = default; // Whether the server has requested a reconnect bool reconnect_requested = false; @@ -51,5 +51,5 @@ struct MainMenuData { // Data to be passed to the script MainMenuDataForScript script_data; - MainMenuData() {} + MainMenuData() = default; }; diff --git a/src/guiPathSelectMenu.cpp b/src/guiPathSelectMenu.cpp index e56a6224c..b999f0a68 100644 --- a/src/guiPathSelectMenu.cpp +++ b/src/guiPathSelectMenu.cpp @@ -67,7 +67,7 @@ void GUIFileSelectMenu::drawMenu() void GUIFileSelectMenu::acceptInput() { - if ((m_text_dst != 0) && (this->m_formname != "")) { + if (m_text_dst && !m_formname.empty()) { StringMap fields; if (m_accepted) { std::string path; @@ -82,7 +82,7 @@ void GUIFileSelectMenu::acceptInput() } else { fields[m_formname + "_canceled"] = m_formname; } - this->m_text_dst->gotText(fields); + m_text_dst->gotText(fields); } quitMenu(); } diff --git a/src/guiTable.cpp b/src/guiTable.cpp index 9354eef3d..ab6de9435 100644 --- a/src/guiTable.cpp +++ b/src/guiTable.cpp @@ -22,7 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include #include #include -#include +#include #include #include #include diff --git a/src/guiscalingfilter.cpp b/src/guiscalingfilter.cpp index 1b0dfac79..dc6219b60 100644 --- a/src/guiscalingfilter.cpp +++ b/src/guiscalingfilter.cpp @@ -20,7 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "imagefilters.h" #include "settings.h" #include "util/numeric.h" -#include +#include #include "client/renderingengine.h" /* Maintain a static cache to store the images that correspond to textures @@ -51,16 +51,14 @@ void guiScalingCache(io::path key, video::IVideoDriver *driver, video::IImage *v // Manually clear the cache, e.g. when switching to different worlds. void guiScalingCacheClear() { - for (std::map::iterator it = g_imgCache.begin(); - it != g_imgCache.end(); ++it) { - if (it->second) - it->second->drop(); + for (auto &it : g_imgCache) { + if (it.second) + it.second->drop(); } g_imgCache.clear(); - for (std::map::iterator it = g_txrCache.begin(); - it != g_txrCache.end(); ++it) { - if (it->second) - RenderingEngine::get_video_driver()->removeTexture(it->second); + for (auto &it : g_txrCache) { + if (it.second) + RenderingEngine::get_video_driver()->removeTexture(it.second); } g_txrCache.clear(); } diff --git a/src/guiscalingfilter.h b/src/guiscalingfilter.h index 4661bf8da..7408ff5eb 100644 --- a/src/guiscalingfilter.h +++ b/src/guiscalingfilter.h @@ -46,5 +46,5 @@ video::ITexture *guiScalingImageButton(video::IVideoDriver *driver, video::IText */ void draw2DImageFilterScaled(video::IVideoDriver *driver, video::ITexture *txr, const core::rect &destrect, const core::rect &srcrect, - const core::rect *cliprect = 0, const video::SColor *const colors = 0, + const core::rect *cliprect = 0, video::SColor *const colors = 0, bool usealpha = false);