size_t others;
};
-struct object_stats {
+struct object_values {
size_t tags;
size_t commits;
size_t trees;
size_t blobs;
};
+struct object_stats {
+ struct object_values type_counts;
+};
+
struct repo_structure {
struct ref_stats refs;
struct object_stats objects;
return stats->branches + stats->remotes + stats->tags + stats->others;
}
-static inline size_t get_total_object_count(struct object_stats *stats)
+static inline size_t get_total_object_values(struct object_values *values)
{
- return stats->tags + stats->commits + stats->trees + stats->blobs;
+ return values->tags + values->commits + values->trees + values->blobs;
}
static void stats_table_setup_structure(struct stats_table *table,
stats_table_count_addf(table, refs->remotes, " * %s", _("Remotes"));
stats_table_count_addf(table, refs->others, " * %s", _("Others"));
- object_total = get_total_object_count(objects);
+ object_total = get_total_object_values(&objects->type_counts);
stats_table_addf(table, "");
stats_table_addf(table, "* %s", _("Reachable objects"));
stats_table_count_addf(table, object_total, " * %s", _("Count"));
- stats_table_count_addf(table, objects->commits, " * %s", _("Commits"));
- stats_table_count_addf(table, objects->trees, " * %s", _("Trees"));
- stats_table_count_addf(table, objects->blobs, " * %s", _("Blobs"));
- stats_table_count_addf(table, objects->tags, " * %s", _("Tags"));
+ stats_table_count_addf(table, objects->type_counts.commits,
+ " * %s", _("Commits"));
+ stats_table_count_addf(table, objects->type_counts.trees,
+ " * %s", _("Trees"));
+ stats_table_count_addf(table, objects->type_counts.blobs,
+ " * %s", _("Blobs"));
+ stats_table_count_addf(table, objects->type_counts.tags,
+ " * %s", _("Tags"));
}
static void stats_table_print_structure(const struct stats_table *table)
(uintmax_t)stats->refs.others, value_delim);
printf("objects.commits.count%c%" PRIuMAX "%c", key_delim,
- (uintmax_t)stats->objects.commits, value_delim);
+ (uintmax_t)stats->objects.type_counts.commits, value_delim);
printf("objects.trees.count%c%" PRIuMAX "%c", key_delim,
- (uintmax_t)stats->objects.trees, value_delim);
+ (uintmax_t)stats->objects.type_counts.trees, value_delim);
printf("objects.blobs.count%c%" PRIuMAX "%c", key_delim,
- (uintmax_t)stats->objects.blobs, value_delim);
+ (uintmax_t)stats->objects.type_counts.blobs, value_delim);
printf("objects.tags.count%c%" PRIuMAX "%c", key_delim,
- (uintmax_t)stats->objects.tags, value_delim);
+ (uintmax_t)stats->objects.type_counts.tags, value_delim);
fflush(stdout);
}
switch (type) {
case OBJ_TAG:
- stats->tags += oids->nr;
+ stats->type_counts.tags += oids->nr;
break;
case OBJ_COMMIT:
- stats->commits += oids->nr;
+ stats->type_counts.commits += oids->nr;
break;
case OBJ_TREE:
- stats->trees += oids->nr;
+ stats->type_counts.trees += oids->nr;
break;
case OBJ_BLOB:
- stats->blobs += oids->nr;
+ stats->type_counts.blobs += oids->nr;
break;
default:
BUG("invalid object type");
}
- object_count = get_total_object_count(stats);
+ object_count = get_total_object_values(&stats->type_counts);
display_progress(data->progress, object_count);
return 0;