#ifndef __COMMANDS_ARGUMENT_H__ #define __COMMANDS_ARGUMENT_H__ enum ArgumentType { string, file }; struct Argument { char* name; enum ArgumentType type; int required; int variadic; int supports_stdin; int recursive; char* description; int enable_stdin; }; int init_argument(struct Argument* argument, char* name, int required, int variadic, char* description); int uninit_argument(struct Argument* argument); int init_string_argument(struct Argument* argument, char* name, int required, int variadic, char* description); int init_file_argument(struct Argument* argument, char* name, int required, int variadic, char* description); #endif