popt.h | popt.h | |||
---|---|---|---|---|
skipping to change at line 22 | skipping to change at line 22 | |||
#include <stdio.h> /* for FILE * */ | #include <stdio.h> /* for FILE * */ | |||
#define POPT_OPTION_DEPTH 10 | #define POPT_OPTION_DEPTH 10 | |||
/** \ingroup popt | /** \ingroup popt | |||
* \name Arg type identifiers | * \name Arg type identifiers | |||
*/ | */ | |||
/*@{*/ | /*@{*/ | |||
#define POPT_ARG_NONE 0U /*!< no arg */ | #define POPT_ARG_NONE 0U /*!< no arg */ | |||
#define POPT_ARG_STRING 1U /*!< arg will be saved as st ring */ | #define POPT_ARG_STRING 1U /*!< arg will be saved as st ring */ | |||
#define POPT_ARG_INT 2U /*!< arg will be converted to int */ | #define POPT_ARG_INT 2U /*!< arg ==> int */ | |||
#define POPT_ARG_LONG 3U /*!< arg will be converted to long * | #define POPT_ARG_LONG 3U /*!< arg ==> long */ | |||
/ | ||||
#define POPT_ARG_INCLUDE_TABLE 4U /*!< arg points to table */ | #define POPT_ARG_INCLUDE_TABLE 4U /*!< arg points to table */ | |||
#define POPT_ARG_CALLBACK 5U /*!< table-wide callback... must be | #define POPT_ARG_CALLBACK 5U /*!< table-wide callback... must be | |||
set first in table; arg points | set first in table; arg points | |||
to callback, descrip points to | to callback, descrip points to | |||
callback data to pass */ | callback data to pass */ | |||
#define POPT_ARG_INTL_DOMAIN 6U /*!< set the translation domain | #define POPT_ARG_INTL_DOMAIN 6U /*!< set the translation domain | |||
for this table and any | for this table and any | |||
included tables; arg points | included tables; arg points | |||
to the domain string */ | to the domain string */ | |||
#define POPT_ARG_VAL 7U /*!< arg should take value val */ | #define POPT_ARG_VAL 7U /*!< arg should take value val */ | |||
#define POPT_ARG_FLOAT 8U /*!< arg will be converted t | #define POPT_ARG_FLOAT 8U /*!< arg ==> float */ | |||
o float */ | #define POPT_ARG_DOUBLE 9U /*!< arg ==> double */ | |||
#define POPT_ARG_DOUBLE 9U /*!< arg will be converted t | #define POPT_ARG_LONGLONG 10U /*!< arg ==> long long */ | |||
o double */ | ||||
#define POPT_ARG_MAINCALL 10U /*!< return (*arg) (argc, argv) */ | #define POPT_ARG_MAINCALL 16U+11U /*!< EXPERIMENTAL: return (*arg) (ar | |||
gc, argv) */ | ||||
#define POPT_ARG_ARGV 12U /*!< dupe'd arg appended to | ||||
realloc'd argv array. */ | ||||
#define POPT_ARG_MASK 0x0000FFFFU | #define POPT_ARG_MASK 0x0000FFFFU | |||
/*@}*/ | /*@}*/ | |||
/** \ingroup popt | /** \ingroup popt | |||
* \name Arg modifiers | * \name Arg modifiers | |||
*/ | */ | |||
/*@{*/ | /*@{*/ | |||
#define POPT_ARGFLAG_ONEDASH 0x80000000U /*!< allow -longoption */ | #define POPT_ARGFLAG_ONEDASH 0x80000000U /*!< allow -longoption */ | |||
#define POPT_ARGFLAG_DOC_HIDDEN 0x40000000U /*!< don't show in help/usage */ | #define POPT_ARGFLAG_DOC_HIDDEN 0x40000000U /*!< don't show in help/usage */ | |||
skipping to change at line 249 | skipping to change at line 251 | |||
* @param options address of popt option table | * @param options address of popt option table | |||
* @param flags or'd POPT_CONTEXT_* bits | * @param flags or'd POPT_CONTEXT_* bits | |||
* @return initialized popt context | * @return initialized popt context | |||
*/ | */ | |||
/*@only@*/ /*@null@*/ | /*@only@*/ /*@null@*/ | |||
poptContext poptGetContext( | poptContext poptGetContext( | |||
/*@dependent@*/ /*@keep@*/ const char * name, | /*@dependent@*/ /*@keep@*/ const char * name, | |||
int argc, /*@dependent@*/ /*@keep@*/ const char ** argv, | int argc, /*@dependent@*/ /*@keep@*/ const char ** argv, | |||
/*@dependent@*/ /*@keep@*/ const struct poptOption * options , | /*@dependent@*/ /*@keep@*/ const struct poptOption * options , | |||
unsigned int flags) | unsigned int flags) | |||
/*@*/; | /*@globals internalState @*/ | |||
/*@modifies internalState @*/; | ||||
/** \ingroup popt | /** \ingroup popt | |||
* Reinitialize popt context. | * Reinitialize popt context. | |||
* @param con context | * @param con context | |||
*/ | */ | |||
/*@unused@*/ | /*@unused@*/ | |||
void poptResetContext(/*@null@*/poptContext con) | void poptResetContext(/*@null@*/poptContext con) | |||
/*@modifies con @*/; | /*@modifies con @*/; | |||
/** \ingroup popt | /** \ingroup popt | |||
skipping to change at line 535 | skipping to change at line 538 | |||
* @param argc no. of args | * @param argc no. of args | |||
* @param argv arg vector | * @param argv arg vector | |||
* @return new argc | * @return new argc | |||
*/ | */ | |||
/*@-fcnuse@*/ | /*@-fcnuse@*/ | |||
int poptStrippedArgv(poptContext con, int argc, char ** argv) | int poptStrippedArgv(poptContext con, int argc, char ** argv) | |||
/*@modifies *argv @*/; | /*@modifies *argv @*/; | |||
/*@=fcnuse@*/ | /*@=fcnuse@*/ | |||
/** | /** | |||
* Add a string to an argv array. | ||||
* @retval *argvp argv array | ||||
* @param argInfo (unused) | ||||
* @param val string arg to add (using strdup) | ||||
* @return 0 always | ||||
*/ | ||||
/*@unused@*/ | ||||
int poptSaveString(/*@null@*/ const char *** argvp, unsigned int argInfo, | ||||
const char * val) | ||||
/*@modifies *argvp @*/; | ||||
/** | ||||
* Save a long long, performing logical operation with value. | ||||
* @warning Alignment check may be too strict on certain platorms. | ||||
* @param arg integer pointer, aligned on int boundary. | ||||
* @param argInfo logical operation (see POPT_ARGFLAG_*) | ||||
* @param aLongLong value to use | ||||
* @return 0 on success, POPT_ERROR_NULLARG/POPT_ERROR_BADOPERA | ||||
TION | ||||
*/ | ||||
/*@-incondefs@*/ | ||||
/*@unused@*/ | ||||
int poptSaveLongLong(/*@null@*/ long long * arg, unsigned int argInfo, | ||||
long long aLongLong) | ||||
/*@globals internalState @*/ | ||||
/*@modifies *arg, internalState @*/ | ||||
/*@requires maxSet(arg) >= 0 /\ maxRead(arg) == 0 @*/; | ||||
/*@=incondefs@*/ | ||||
/** | ||||
* Save a long, performing logical operation with value. | * Save a long, performing logical operation with value. | |||
* @warning Alignment check may be too strict on certain platorms. | * @warning Alignment check may be too strict on certain platorms. | |||
* @param arg integer pointer, aligned on int boundary. | * @param arg integer pointer, aligned on int boundary. | |||
* @param argInfo logical operation (see POPT_ARGFLAG_*) | * @param argInfo logical operation (see POPT_ARGFLAG_*) | |||
* @param aLong value to use | * @param aLong value to use | |||
* @return 0 on success, POPT_ERROR_NULLARG/POPT_ERROR_BADOPERA TION | * @return 0 on success, POPT_ERROR_NULLARG/POPT_ERROR_BADOPERA TION | |||
*/ | */ | |||
/*@-incondefs@*/ | /*@-incondefs@*/ | |||
/*@unused@*/ | /*@unused@*/ | |||
int poptSaveLong(/*@null@*/ long * arg, unsigned int argInfo, long aLong) | int poptSaveLong(/*@null@*/ long * arg, unsigned int argInfo, long aLong) | |||
End of changes. 5 change blocks. | ||||
9 lines changed or deleted | 41 lines changed or added | |||