📄 popt.h
字号:
* @return current argument, NULL if no argument is available *//*@observer@*/ /*@null@*/ /*@unused@*/const char * poptPeekArg(/*@null@*/poptContext con) /*@*/;/** \ingroup popt * Return remaining arguments. * @param con context * @return argument array, NULL terminated *//*@observer@*/ /*@null@*/const char ** poptGetArgs(/*@null@*/poptContext con) /*@modifies con @*/;/** \ingroup popt * Return the option which caused the most recent error. * @param con context * @param flags * @return offending option *//*@observer@*/const char * poptBadOption(/*@null@*/poptContext con, int flags) /*@*/;/** \ingroup popt * Destroy context. * @param con context * @return NULL always *//*@null@*/poptContext poptFreeContext( /*@only@*/ /*@null@*/ poptContext con) /*@modifies con @*/;/** \ingroup popt * Add arguments to context. * @param con context * @param argv argument array, NULL terminated * @return 0 on success, POPT_ERROR_OPTSTOODEEP on failure *//*@unused@*/int poptStuffArgs(poptContext con, /*@keep@*/ const char ** argv) /*@modifies con @*/;/** \ingroup popt * Add alias to context. * @todo Pass alias by reference, not value. * @deprecated Use poptAddItem instead. * @param con context * @param alias alias to add * @param flags (unused) * @return 0 on success *//*@unused@*/int poptAddAlias(poptContext con, struct poptAlias alias, int flags) /*@modifies con @*/;/** \ingroup popt * Add alias/exec item to context. * @param con context * @param newItem alias/exec item to add * @param flags 0 for alias, 1 for exec * @return 0 on success */int poptAddItem(poptContext con, poptItem newItem, int flags) /*@modifies con @*/;/** \ingroup popt * Read configuration file. * @param con context * @param fn file name to read * @return 0 on success, POPT_ERROR_ERRNO on failure */int poptReadConfigFile(poptContext con, const char * fn) /*@globals errno, fileSystem, internalState @*/ /*@modifies con->execs, con->numExecs, errno, fileSystem, internalState @*/;/** \ingroup popt * Read default configuration from /etc/popt and $HOME/.popt. * @param con context * @param useEnv (unused) * @return 0 on success, POPT_ERROR_ERRNO on failure *//*@unused@*/int poptReadDefaultConfig(poptContext con, /*@unused@*/ int useEnv) /*@globals fileSystem, internalState @*/ /*@modifies con->execs, con->numExecs, fileSystem, internalState @*/;/** \ingroup popt * Duplicate an argument array. * @note: The argument array is malloc'd as a single area, so only argv must * be free'd. * * @param argc no. of arguments * @param argv argument array * @retval argcPtr address of returned no. of arguments * @retval argvPtr address of returned argument array * @return 0 on success, POPT_ERROR_NOARG on failure */int poptDupArgv(int argc, /*@null@*/ const char **argv, /*@null@*/ /*@out@*/ int * argcPtr, /*@null@*/ /*@out@*/ const char *** argvPtr) /*@modifies *argcPtr, *argvPtr @*/;/** \ingroup popt * Parse a string into an argument array. * The parse allows ', ", and \ quoting, but ' is treated the same as " and * both may include \ quotes. * @note: The argument array is malloc'd as a single area, so only argv must * be free'd. * * @param s string to parse * @retval argcPtr address of returned no. of arguments * @retval argvPtr address of returned argument array */int poptParseArgvString(const char * s, /*@out@*/ int * argcPtr, /*@out@*/ const char *** argvPtr) /*@modifies *argcPtr, *argvPtr @*/;/** \ingroup popt * Parses an input configuration file and returns an string that is a * command line. For use with popt. You must free the return value when done. * * Given the file:\verbatim# this line is ignored # this one tooaaa bbb ccc bla=blathis_is = fdsafdas bad_line= reall bad line reall bad line = again5555= 55555 test = with lots of spaces\endverbatim** The result is:\verbatim--aaa --bbb --ccc --bla="bla" --this_is="fdsafdas" --5555="55555" --test="with lots of spaces"\endverbatim** Passing this to poptParseArgvString() yields an argv of:\verbatim'--aaa''--bbb' '--ccc' '--bla=bla' '--this_is=fdsafdas' '--5555=55555' '--test=with lots of spaces' \endverbatim * * @bug NULL is returned if file line is too long. * @bug Silently ignores invalid lines. * * @param fp file handle to read * @param *argstrp return string of options (malloc'd) * @param flags unused * @return 0 on success * @see poptParseArgvString *//*@-fcnuse@*/int poptConfigFileToString(FILE *fp, /*@out@*/ char ** argstrp, int flags) /*@globals fileSystem @*/ /*@modifies *fp, *argstrp, fileSystem @*/;/*@=fcnuse@*//** \ingroup popt * Return formatted error string for popt failure. * @param error popt error * @return error string *//*@observer@*/const char * poptStrerror(const int error) /*@*/;/** \ingroup popt * Limit search for executables. * @param con context * @param path single path to search for executables * @param allowAbsolute absolute paths only? *//*@unused@*/void poptSetExecPath(poptContext con, const char * path, int allowAbsolute) /*@modifies con @*/;/** \ingroup popt * Print detailed description of options. * @param con context * @param fp ouput file handle * @param flags (unused) */void poptPrintHelp(poptContext con, FILE * fp, /*@unused@*/ int flags) /*@globals fileSystem @*/ /*@modifies *fp, fileSystem @*/;/** \ingroup popt * Print terse description of options. * @param con context * @param fp ouput file handle * @param flags (unused) */void poptPrintUsage(poptContext con, FILE * fp, /*@unused@*/ int flags) /*@globals fileSystem @*/ /*@modifies *fp, fileSystem @*/;/** \ingroup popt * Provide text to replace default "[OPTION...]" in help/usage output. * @param con context * @param text replacement text *//*@-fcnuse@*/void poptSetOtherOptionHelp(poptContext con, const char * text) /*@modifies con @*/;/*@=fcnuse@*//** \ingroup popt * Return argv[0] from context. * @param con context * @return argv[0] *//*@-fcnuse@*//*@observer@*/const char * poptGetInvocationName(poptContext con) /*@*/;/*@=fcnuse@*//** \ingroup popt * Shuffle argv pointers to remove stripped args, returns new argc. * @param con context * @param argc no. of args * @param argv arg vector * @return new argc *//*@-fcnuse@*/int poptStrippedArgv(poptContext con, int argc, char ** argv) /*@modifies *argv @*/;/*@=fcnuse@*//** * Save a 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 aLong value to use * @return 0 on success, POPT_ERROR_NULLARG/POPT_ERROR_BADOPERATION *//*@-incondefs@*//*@unused@*/int poptSaveLong(/*@null@*/ long * arg, int argInfo, long aLong) /*@modifies *arg @*/ /*@requires maxSet(arg) >= 0 /\ maxRead(arg) == 0 @*/;/*@=incondefs@*//** * Save an integer, 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 aLong value to use * @return 0 on success, POPT_ERROR_NULLARG/POPT_ERROR_BADOPERATION *//*@-incondefs@*//*@unused@*/int poptSaveInt(/*@null@*/ int * arg, int argInfo, long aLong) /*@modifies *arg @*/ /*@requires maxSet(arg) >= 0 /\ maxRead(arg) == 0 @*/;/*@=incondefs@*//*@=type@*/#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -