summaryrefslogtreecommitdiff
path: root/include/my_getopt.h
diff options
context:
space:
mode:
authorunknown <jani@rhols221.adsl.netsonic.fi>2002-01-25 23:34:37 +0200
committerunknown <jani@rhols221.adsl.netsonic.fi>2002-01-25 23:34:37 +0200
commit845db7c20ba28e014c5a36a6c95afd8ed111f316 (patch)
treeebdc1f846c1fa8a627690099d9a418063625577e /include/my_getopt.h
parentaa166cbd983d28e31e23c096ca360a641de98c00 (diff)
downloadmariadb-git-845db7c20ba28e014c5a36a6c95afd8ed111f316.tar.gz
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
Diffstat (limited to 'include/my_getopt.h')
-rw-r--r--include/my_getopt.h46
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 */
+};
+