#include "apimagic_driver_impl.h"
#include "argv/argv.h"
#define AMGC_LANG_STD_PARADIGM "c++|c++98|c11|c1x|c89|c90|c99|c9x|" \
"gnu++98|gnu11|gnu1x|" \
"gnu89|gnu99|gnu9x|" \
"iso9899:1990|" \
"iso9899:199409|" \
"iso9899:1999|" \
"iso9899:199x|" \
"iso9899:2011"
const struct argv_option amgc_default_options[] = {
{"version", 'v',TAG_VERSION,ARGV_OPTARG_NONE,0,0,0,
"show version information"},
{"help", 'h',TAG_HELP,ARGV_OPTARG_OPTIONAL,0,"short|long",0,
"show usage information [listing %s options only]"},
{"print-enums", 0,TAG_PRINT_ENUMS,ARGV_OPTARG_NONE,0,0,0,
"output the translation unit's enums."},
{"list-enums", 0,TAG_LIST_ENUMS,ARGV_OPTARG_NONE,0,0,0,
"output forward declarations for "
"the translation unit's enums."},
{"print-structs",0,TAG_PRINT_STRUCTS,ARGV_OPTARG_NONE,0,0,0,
"output the translation unit's structs."},
{"print-unions",0,TAG_PRINT_UNIONS,ARGV_OPTARG_NONE,0,0,0,
"output the translation unit's unions."},
{"print-typedefs",0,TAG_PRINT_TYPEDEFS,ARGV_OPTARG_REQUIRED,0,
"primary",0,
"output (a subset of) the translation unit's "
"type definitions"},
{"std", '\0',TAG_LANG_STD,ARGV_OPTARG_REQUIRED,
ARGV_OPTION_HYBRID_EQUAL,AMGC_LANG_STD_PARADIGM,0,
"set language standard"},
{0}
};