using System; using System.Collections.Generic; namespace Mono.Documentation.Updater.Statistics { /// /// The class stores statistics: int value for each StatisticsItem-StatisticsMetrics pair /// public class StatisticsStorage { public Dictionary> Values { get; } = new Dictionary>(); public StatisticsStorage() { foreach (var statisticsItem in Enum.GetValues(typeof(StatisticsItem))) { var metrics = Values[(StatisticsItem)statisticsItem] = new Dictionary(); foreach (var statisticsMetrics in Enum.GetValues(typeof(StatisticsMetrics))) { metrics[(StatisticsMetrics) statisticsMetrics] = 0; } } } public void AddMetric(StatisticsItem item, StatisticsMetrics metrics, int delta = 1) { Values[item][metrics] += delta; } } }