From 845db7c20ba28e014c5a36a6c95afd8ed111f316 Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 25 Jan 2002 23:34:37 +0200 Subject: Added my_getopt struct and modified myisamchk to the bk tree. include/Makefile.am: Added my_getopt.h myisam/myisamchk.c: myisamcheck is using my_getopt struct now. Old code left: changeable_var[], will be changed later. mysys/Makefile.am: added my_getopt.c mysys/getvar.c: Added my_set_changeable_var. This is not being used yet, and is mostly a copy of set_changeable_var still. BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted --- include/my_getopt.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 include/my_getopt.h (limited to 'include/my_getopt.h') 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 */ +}; + -- cgit v1.2.1