diff options
author | Lioncash <mathew1800@gmail.com> | 2018-07-18 23:03:22 -0400 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2018-07-18 23:03:27 -0400 |
commit | 5e626c774fa28cf8689f4f3e52d2c4c5ba8c64ed (patch) | |
tree | d2fa27f1b3e752bf628f9584db16f5b603c6a3e6 /src | |
parent | 1371e2fb6acf29c228cd96d917ffb747ead4485e (diff) |
vfs: Deduplicate accumulation code in VfsDirectory's GetSize()
We can just use a generic lambda to avoid writing the same thing twice.
Diffstat (limited to 'src')
-rw-r--r-- | src/core/file_sys/vfs.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/core/file_sys/vfs.cpp b/src/core/file_sys/vfs.cpp index f859ef33f..16c8ad90b 100644 --- a/src/core/file_sys/vfs.cpp +++ b/src/core/file_sys/vfs.cpp @@ -116,14 +116,14 @@ bool VfsDirectory::IsRoot() const { size_t VfsDirectory::GetSize() const { const auto& files = GetFiles(); - const auto file_total = - std::accumulate(files.begin(), files.end(), 0ull, - [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); + const auto sum_sizes = [](const auto& range) { + return std::accumulate(range.begin(), range.end(), 0ULL, + [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); + }; + const auto file_total = sum_sizes(files); const auto& sub_dir = GetSubdirectories(); - const auto subdir_total = - std::accumulate(sub_dir.begin(), sub_dir.end(), 0ull, - [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); + const auto subdir_total = sum_sizes(sub_dir); return file_total + subdir_total; } |