diff options
| author | Pierre Bourdon <delroth@gmail.com> | 2016-06-24 10:43:46 +0200 |
|---|---|---|
| committer | Pierre Bourdon <delroth@gmail.com> | 2016-06-24 10:43:46 +0200 |
| commit | 3570c7f03a2aa90aa634f96c0af1969af610f14d (patch) | |
| tree | 4252e03c0e853ba7cffe022937698c854ad0eaa9 /Source/Core/Common/FileSearch.cpp | |
| parent | 2115e8a4a6814e32107b5205ff5c95bbd3c6e99c (diff) | |
Reformat all the things. Have fun with merge conflicts.
Diffstat (limited to 'Source/Core/Common/FileSearch.cpp')
| -rw-r--r-- | Source/Core/Common/FileSearch.cpp | 72 |
1 files changed, 38 insertions, 34 deletions
diff --git a/Source/Core/Common/FileSearch.cpp b/Source/Core/Common/FileSearch.cpp index 451c451030..6a53f12e02 100644 --- a/Source/Core/Common/FileSearch.cpp +++ b/Source/Core/Common/FileSearch.cpp @@ -9,47 +9,51 @@ #include "Common/FileSearch.h" #include "Common/FileUtil.h" -static std::vector<std::string> FileSearchWithTest(const std::vector<std::string>& directories, bool recursive, std::function<bool(const File::FSTEntry &)> callback) +static std::vector<std::string> +FileSearchWithTest(const std::vector<std::string>& directories, bool recursive, + std::function<bool(const File::FSTEntry&)> callback) { - std::vector<std::string> result; - for (const std::string& directory : directories) - { - File::FSTEntry top = File::ScanDirectoryTree(directory, recursive); + std::vector<std::string> result; + for (const std::string& directory : directories) + { + File::FSTEntry top = File::ScanDirectoryTree(directory, recursive); - std::function<void(File::FSTEntry&)> DoEntry; - DoEntry = [&](File::FSTEntry& entry) { - if (callback(entry)) - result.push_back(entry.physicalName); - for (auto& child : entry.children) - DoEntry(child); - }; - for (auto& child : top.children) - DoEntry(child); - } - // remove duplicates - std::sort(result.begin(), result.end()); - result.erase(std::unique(result.begin(), result.end()), result.end()); - return result; + std::function<void(File::FSTEntry&)> DoEntry; + DoEntry = [&](File::FSTEntry& entry) { + if (callback(entry)) + result.push_back(entry.physicalName); + for (auto& child : entry.children) + DoEntry(child); + }; + for (auto& child : top.children) + DoEntry(child); + } + // remove duplicates + std::sort(result.begin(), result.end()); + result.erase(std::unique(result.begin(), result.end()), result.end()); + return result; } -std::vector<std::string> DoFileSearch(const std::vector<std::string>& exts, const std::vector<std::string>& directories, bool recursive) +std::vector<std::string> DoFileSearch(const std::vector<std::string>& exts, + const std::vector<std::string>& directories, bool recursive) { - bool accept_all = std::find(exts.begin(), exts.end(), "") != exts.end(); - return FileSearchWithTest(directories, recursive, [&](const File::FSTEntry& entry) { - if (accept_all) - return true; - std::string name = entry.virtualName; - std::transform(name.begin(), name.end(), name.begin(), ::tolower); - return std::any_of(exts.begin(), exts.end(), [&](const std::string& ext) { - return name.length() >= ext.length() && name.compare(name.length() - ext.length(), ext.length(), ext) == 0; - }); - }); + bool accept_all = std::find(exts.begin(), exts.end(), "") != exts.end(); + return FileSearchWithTest(directories, recursive, [&](const File::FSTEntry& entry) { + if (accept_all) + return true; + std::string name = entry.virtualName; + std::transform(name.begin(), name.end(), name.begin(), ::tolower); + return std::any_of(exts.begin(), exts.end(), [&](const std::string& ext) { + return name.length() >= ext.length() && + name.compare(name.length() - ext.length(), ext.length(), ext) == 0; + }); + }); } // Result includes the passed directories themselves as well as their subdirectories. -std::vector<std::string> FindSubdirectories(const std::vector<std::string>& directories, bool recursive) +std::vector<std::string> FindSubdirectories(const std::vector<std::string>& directories, + bool recursive) { - return FileSearchWithTest(directories, true, [&](const File::FSTEntry& entry) { - return entry.isDirectory; - }); + return FileSearchWithTest(directories, true, + [&](const File::FSTEntry& entry) { return entry.isDirectory; }); } |
