double mean()

in lib/github_datatypes.dart [1916:1948]


  double mean() {
    double sum = 0.0;
    double l = 0.0;
    switch (type) {
      case ClusterType.byAuthor:
        l = (clusters.keys.contains(_unassignedKey)
                ? clusters.keys.length - 1
                : clusters.keys.length)
            .toDouble();
        break;
      case ClusterType.byAssignee:
      case ClusterType.byReviewer:
        l = (clusters.keys.contains(_unassignedKey)
                ? clusters.keys.length - 1
                : clusters.keys.length)
            .toDouble();
        break;
      case ClusterType.byMilestone:
        l = (clusters.keys.contains(_noMilestoneKey)
                ? clusters.keys.length - 1
                : clusters.keys.length)
            .toDouble();
        break;
      case ClusterType.byLabel:
        l = (clusters.keys.contains(_unlabeledKey)
                ? (clusters.keys.length - 1)
                : clusters.keys.length)
            .toDouble();
        break;
    }
    clusters.keys.forEach((key) => sum += clusters[key].length);
    return sum / l;
  }