diff options
| author | 2018-07-18 23:03:22 -0400 | |
|---|---|---|
| committer | 2018-07-18 23:03:27 -0400 | |
| commit | 5e626c774fa28cf8689f4f3e52d2c4c5ba8c64ed (patch) | |
| tree | d2fa27f1b3e752bf628f9584db16f5b603c6a3e6 /src/core/file_sys/vfs.cpp | |
| parent | Merge pull request #691 from lioncash/guard (diff) | |
| download | yuzu-5e626c774fa28cf8689f4f3e52d2c4c5ba8c64ed.tar.gz yuzu-5e626c774fa28cf8689f4f3e52d2c4c5ba8c64ed.tar.xz yuzu-5e626c774fa28cf8689f4f3e52d2c4c5ba8c64ed.zip | |
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/core/file_sys/vfs.cpp')
| -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 { | |||
| 116 | 116 | ||
| 117 | size_t VfsDirectory::GetSize() const { | 117 | size_t VfsDirectory::GetSize() const { |
| 118 | const auto& files = GetFiles(); | 118 | const auto& files = GetFiles(); |
| 119 | const auto file_total = | 119 | const auto sum_sizes = [](const auto& range) { |
| 120 | std::accumulate(files.begin(), files.end(), 0ull, | 120 | return std::accumulate(range.begin(), range.end(), 0ULL, |
| 121 | [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); | 121 | [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); |
| 122 | }; | ||
| 122 | 123 | ||
| 124 | const auto file_total = sum_sizes(files); | ||
| 123 | const auto& sub_dir = GetSubdirectories(); | 125 | const auto& sub_dir = GetSubdirectories(); |
| 124 | const auto subdir_total = | 126 | const auto subdir_total = sum_sizes(sub_dir); |
| 125 | std::accumulate(sub_dir.begin(), sub_dir.end(), 0ull, | ||
| 126 | [](const auto& f1, const auto& f2) { return f1 + f2->GetSize(); }); | ||
| 127 | 127 | ||
| 128 | return file_total + subdir_total; | 128 | return file_total + subdir_total; |
| 129 | } | 129 | } |