aboutsummaryrefslogtreecommitdiff
path: root/src/common.h
diff options
context:
space:
mode:
authorJan200101 <sentrycraft123@gmail.com>2021-04-26 07:40:37 +0200
committerJan200101 <sentrycraft123@gmail.com>2021-04-26 07:40:37 +0200
commite6279af295cc0e8b985a5a43a16ac6313eb6c698 (patch)
tree52f39915b61988b784fd03495234dd75001e033e /src/common.h
parent67d5d1b742584ffeb9859eb7b92a41e0d365622d (diff)
downloadpolecat-e6279af295cc0e8b985a5a43a16ac6313eb6c698.tar.gz
polecat-e6279af295cc0e8b985a5a43a16ac6313eb6c698.zip
implement flags and sort commands by alphabet
stupid standard --help and --version
Diffstat (limited to 'src/common.h')
-rw-r--r--src/common.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/common.h b/src/common.h
index 9680e8d..5f09c07 100644
--- a/src/common.h
+++ b/src/common.h
@@ -65,7 +65,20 @@ struct Command {
char* description;
};
-void print_help(const struct Command*, size_t);
+enum flag_variants {
+ SINGLE = 1,
+ DOUBLE = 2,
+ BOTH = SINGLE + DOUBLE
+};
+
+struct Flag {
+ char* name;
+ enum flag_variants variant;
+ int (*func)(int, char**);
+ char* description;
+};
+
+void print_help(const struct Command*, size_t, const struct Flag*, size_t);
struct stat getStat(const char* path);
int isFile(const char*);