/*
This file is part of GNUnet.
- (C) 2001-2013 Christian Grothoff (and other contributing authors)
+ Copyright (C) 2001-2013 GNUnet e.V.
GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
You should have received a copy of the GNU General Public License
along with GNUnet; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA.
+ Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
*/
/**
- * @file include/gnunet_getopt_lib.h
- * @brief command line parsing and --help formatting
* @author Christian Grothoff
- * @defgroup getopt command-line parsing
+ *
+ * @file
+ * Command line parsing and --help formatting
+ *
+ * @defgroup getopt Getopt library
+ * Command line parsing and --help formatting
* @{
*/
};
+
/**
* @brief Process a command line option
*
* @param value argument, NULL if none was given
* @return #GNUNET_OK to continue processing other options, #GNUNET_SYSERR to abort
*/
-typedef int (*GNUNET_GETOPT_CommandLineOptionProcessor) (struct
- GNUNET_GETOPT_CommandLineProcessorContext
- * ctx, void *scls,
- const char *option,
- const char *value);
+typedef int
+(*GNUNET_GETOPT_CommandLineOptionProcessor) (struct
+ GNUNET_GETOPT_CommandLineProcessorContext *ctx,
+ void *scls,
+ const char *option,
+ const char *value);
/**
* @brief Definition of a command line option.
{
/**
- * Short name of the option (use '\\0' for none).
+ * Short name of the option.
*/
const char shortName;
const char *description;
/**
- * Is an argument required? 0: GNUNET_NO (includes optional), 1: GNUNET_YES.
+ * Is an argument required? #GNUNET_NO (includes optional) or
+ * #GNUNET_YES (required)
*/
int require_argument;
/**
* Set an option of type 'unsigned long long' from the command line.
* A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * `struct GNUNET_GETOPT_CommandLineOption` array to initialize options
* of this type. It should be followed by a pointer to a value of
- * type 'unsigned long long'.
+ * type `unsigned long long`.
*
* @param ctx command line processing context
* @param scls additional closure (will point to the 'unsigned long long')
/**
* Set an option of type 'struct GNUNET_TIME_Relative' from the command line.
* A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * `struct GNUNET_GETOPT_CommandLineOption` array to initialize options
* of this type. It should be followed by a pointer to a value of
- * type 'struct GNUNET_TIME_Relative'.
+ * type `struct GNUNET_TIME_Relative`.
*
* @param ctx command line processing context
* @param scls additional closure (will point to the 'struct GNUNET_TIME_Relative')
/**
* Set an option of type 'unsigned int' from the command line.
* A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * `struct GNUNET_GETOPT_CommandLineOption` array to initialize options
* of this type. It should be followed by a pointer to a value of
- * type 'unsigned int'.
+ * type `unsigned int`.
*
* @param ctx command line processing context
* @param scls additional closure (will point to the 'unsigned int')
* Set an option of type 'int' from the command line to 1 if the
* given option is present.
* A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * `struct GNUNET_GETOPT_CommandLineOption` array to initialize options
* of this type. It should be followed by a pointer to a value of
- * type 'int'.
+ * type `int`.
*
* @param ctx command line processing context
- * @param scls additional closure (will point to the 'int')
+ * @param scls additional closure (will point to the `int`)
* @param option name of the option
* @param value not used (NULL)
* @return #GNUNET_OK (always)
/**
* Set an option of type 'char *' from the command line.
* A pointer to this function should be passed as part of the
- * 'struct GNUNET_GETOPT_CommandLineOption' array to initialize options
+ * `struct GNUNET_GETOPT_CommandLineOption` array to initialize options
* of this type. It should be followed by a pointer to a value of
- * type 'char *', which will be allocated with the requested string.
+ * type `char *`, which will be allocated with the requested string.
*
* @param ctx command line processing context
- * @param scls additional closure (will point to the 'char *',
+ * @param scls additional closure (will point to the `char *`,
* which will be allocated)
* @param option name of the option
* @param value actual value of the option (a string)
}
#endif
-/** @} */ /* end of group getopt */
-
/* ifndef GNUNET_GETOPT_LIB_H */
#endif
+
+/** @} */ /* end of group getopt */
+
/* end of gnunet_getopt_lib.h */