Copyright (C) 2000-2012 |
GNU Info (libc.info)Argp ParsersSpecifying Argp Parsers ----------------------- The first argument to the `argp_parse' function is a pointer to a `struct argp', which is known as an "argp parser": - Data Type: struct argp This structure specifies how to parse a given set of options and arguments, perhaps in conjunction with other argp parsers. It has the following fields: `const struct argp_option *options' A pointer to a vector of `argp_option' structures specifying which options this argp parser understands; it may be zero if there are no options at all. Note: Argp Option Vectors. `argp_parser_t parser' A pointer to a function that defines actions for this parser; it is called for each option parsed, and at other well-defined points in the parsing process. A value of zero is the same as a pointer to a function that always returns `ARGP_ERR_UNKNOWN'. Note: Argp Parser Functions. `const char *args_doc' If non-zero, a string describing what non-option arguments are called by this parser. This is only used to print the `Usage:' message. If it contains newlines, the strings separated by them are considered alternative usage patterns and printed on separate lines. Lines after the first are prefixed by ` or: ' instead of `Usage:'. `const char *doc' If non-zero, a string containing extra text to be printed before and after the options in a long help message, with the two sections separated by a vertical tab (`'\v'', `'\013'') character. By convention, the documentation before the options is just a short string explaining what the program does. Documentation printed after the options describe behavior in more detail. `const struct argp_child *children' A pointer to a vector of `argp_children' structures. This pointer specifies which additional argp parsers should be combined with this one. Note: Argp Children. `char *(*help_filter)(int KEY, const char *TEXT, void *INPUT)' If non-zero, a pointer to a function that filters the output of help messages. Note: Argp Help Filtering. `const char *argp_domain' If non-zero, the strings used in the argp library are translated using the domain described by this string. If zero, the current default domain is used. Of the above group, `options', `parser', `args_doc', and the `doc' fields are usually all that are needed. If an argp parser is defined as an initialized C variable, only the fields used need be specified in the initializer. The rest will default to zero due to the way C structure initialization works. This design is exploited in most argp structures; the most-used fields are grouped near the beginning, the unused fields left unspecified.
automatically generated by info2www version 1.2.2.9 |