summary refs log tree commit diff
path: root/www/git.causal.agency/cgit/ui-stats.h
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-12-27 18:45:04 -0500
committerJune McEnroe <june@causal.agency>2020-12-27 18:45:35 -0500
commit18546c04022491509bd87745da5fe0a89de1ba4a (patch)
tree2221abdae57ff3ff0d9632b4bd22df117234eed2 /www/git.causal.agency/cgit/ui-stats.h
parentRemove 1sh (diff)
parentSquashed 'www/git.causal.agency/cgit/' content from commit 02221fd3 (diff)
downloadsrc-18546c04022491509bd87745da5fe0a89de1ba4a.tar.gz
src-18546c04022491509bd87745da5fe0a89de1ba4a.zip
Merge commit '6169012d588458b9dbbbea56528d5e3669596c80' as 'www/git.causal.agency/cgit'
From tag 'v1.2.3'.
Diffstat (limited to 'www/git.causal.agency/cgit/ui-stats.h')
-rw-r--r--www/git.causal.agency/cgit/ui-stats.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/www/git.causal.agency/cgit/ui-stats.h b/www/git.causal.agency/cgit/ui-stats.h
new file mode 100644
index 00000000..0e61b03d
--- /dev/null
+++ b/www/git.causal.agency/cgit/ui-stats.h
@@ -0,0 +1,28 @@
+#ifndef UI_STATS_H
+#define UI_STATS_H
+
+#include "cgit.h"
+
+struct cgit_period {
+	const char code;
+	const char *name;
+	int max_periods;
+	int count;
+
+	/* Convert a tm value to the first day in the period */
+	void (*trunc)(struct tm *tm);
+
+	/* Update tm value to start of next/previous period */
+	void (*dec)(struct tm *tm);
+	void (*inc)(struct tm *tm);
+
+	/* Pretty-print a tm value */
+	char *(*pretty)(struct tm *tm);
+};
+
+extern int cgit_find_stats_period(const char *expr, const struct cgit_period **period);
+extern const char *cgit_find_stats_periodname(int idx);
+
+extern void cgit_show_stats(void);
+
+#endif /* UI_STATS_H */