src/commit-data.h

changeset 56
3d2720f95cfb
parent 54
586dcd606e47
--- a/src/commit-data.h	Sat Jun 28 11:32:08 2025 +0200
+++ b/src/commit-data.h	Tue Jul 15 19:14:29 2025 +0200
@@ -25,10 +25,26 @@
 #ifndef COMMIT_DATA_H
 #define COMMIT_DATA_H
 
+#include <map>
+#include <numeric>
+#include <vector>
+#include <string>
+
 namespace fm {
     struct commits final {
-        std::vector<std::string> summaries;
-        [[nodiscard]] unsigned count() const {return summaries.size();}
+        std::map<
+            std::string, // repository name
+            std::vector<std::string> > summaries;
+
+        [[nodiscard]] unsigned count(const std::string &repo) const {
+            return summaries.at(repo).size();
+        }
+
+        [[nodiscard]] unsigned count() const {
+            return std::accumulate(
+                summaries.begin(), summaries.end(), 0u,
+                [](unsigned sum, const auto &pair) { return sum + pair.second.size(); });
+        }
     };
 }
 

mercurial