statistics property

SajdahStatistics get statistics

Get statistics about sajdah ayat distribution

Implementation

SajdahStatistics get statistics {
  final surahCounts = <int, int>{};
  final juzCounts = <int, int>{};
  int meccanCount = 0;
  int medinanCount = 0;

  for (final ayah in sajdahAyat) {
    surahCounts[ayah.surah.id] = (surahCounts[ayah.surah.id] ?? 0) + 1;
    juzCounts[ayah.juz] = (juzCounts[ayah.juz] ?? 0) + 1;

    if (ayah.surah.isMeccan) {
      meccanCount++;
    } else {
      medinanCount++;
    }
  }

  return SajdahStatistics(
    totalSajdahAyat: totalSajdahAyat,
    uniqueSurahs: surahCounts.length,
    uniqueJuz: juzCounts.length,
    meccanSajdah: meccanCount,
    medinanSajdah: medinanCount,
    surahDistribution: surahCounts,
    juzDistribution: juzCounts,
  );
}