aboutsummaryrefslogtreecommitdiffstats
path: root/common.h
diff options
context:
space:
mode:
authorMattias Andrée <m@maandree.se>2026-01-25 12:44:41 +0100
committerMattias Andrée <m@maandree.se>2026-01-25 12:44:41 +0100
commit7cebc41015841ff97fd02ae83bc7024bb982539a (patch)
tree2efa810a6860ab9d94615e3c76554f9210c91ab9 /common.h
parentDeduplicate libcharconv.h (diff)
downloadcharconv-7cebc41015841ff97fd02ae83bc7024bb982539a.tar.gz
charconv-7cebc41015841ff97fd02ae83bc7024bb982539a.tar.bz2
charconv-7cebc41015841ff97fd02ae83bc7024bb982539a.tar.xz
Use a macro for all utils that do not take arguments
Signed-off-by: Mattias Andrée <m@maandree.se>
Diffstat (limited to 'common.h')
-rw-r--r--common.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/common.h b/common.h
index 9b30011..7e42a49 100644
--- a/common.h
+++ b/common.h
@@ -11,3 +11,20 @@
void writeall(const char *s, size_t n);
void writechar(uint_least32_t cp);
int convert(enum libcharconv_result (*conv)(const char *, size_t, size_t *, uint_least32_t *, size_t *));
+
+
+#define SIMPLE(FUNCTION)\
+ USAGE("");\
+ \
+ int\
+ main(int argc, char *argv[])\
+ {\
+ ARGBEGIN {\
+ default:\
+ usage();\
+ } ARGEND;\
+ if (argc)\
+ usage();\
+ \
+ return convert(&FUNCTION);\
+ }