diff options
Diffstat (limited to 'include/my_getopt.h')
-rw-r--r-- | include/my_getopt.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/include/my_getopt.h b/include/my_getopt.h new file mode 100644 index 00000000000..3132d6a1672 --- /dev/null +++ b/include/my_getopt.h @@ -0,0 +1,46 @@ +/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ + +struct my_optarg +{ + char *arg; /* option argument */ + int pos; /* next element in ARGV */ + int verbose; /* 0 = inhibit warnings of unrecognized options */ + int unrecognized; /* position of the unrecognized option */ +}; + + +enum get_opt_var_type { GET_NO_ARG, GET_INT, GET_LL, GET_STR }; +enum get_opt_arg_type { NO_ARG, OPT_ARG, REQUIRED_ARG }; + +struct my_option +{ + const char *name; /* Name of the option */ + const char *comment; /* option comment, for autom. --help */ + char *value; /* The variable value */ + const char **str_values; /* Pointer to possible values */ + enum get_opt_var_type var_type; + enum get_opt_arg_type arg_type; + int id; /* unique id or short option */ + long long def_value; /* Default value */ + long long min_value; /* Min allowed value */ + long long max_value; /* Max allowed value */ + long long sub_size; /* Subtract this from given value */ + long block_size; /* Value should be a mult. of this */ + int app_type; /* To be used by an application */ + my_bool changeable_var; /* If true, the option is a variable */ +}; + |