rpmio/argv.h

Go to the documentation of this file.
00001 #ifndef _H_ARGV_
00002 #define _H_ARGV_
00003 
00008 typedef const char * ARGstr_t;
00009 typedef ARGstr_t * ARGV_t;
00010 
00011 typedef int * ARGint_t;
00012 struct ARGI_s {
00013     unsigned nvals;
00014     ARGint_t vals;
00015 };
00016 typedef struct ARGI_s * ARGI_t;
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00028 void argvPrint(const char * msg, ARGV_t argv, FILE * fp)
00029         /*@globals fileSystem @*/
00030         /*@modifies *fp, fileSystem @*/;
00031 
00037 /*@null@*/
00038 ARGI_t argiFree(/*@only@*/ /*@null@*/ ARGI_t argi)
00039         /*@modifies argi @*/;
00040 
00046 /*@null@*/
00047 ARGV_t argvFree(/*@only@*/ /*@null@*/ ARGV_t argv)
00048         /*@modifies argv @*/;
00049 
00055 int argiCount(/*@null@*/ const ARGI_t argi)
00056         /*@*/;
00057 
00063 /*@null@*/
00064 const ARGint_t argiData(/*@null@*/ const ARGI_t argi)
00065         /*@*/;
00066 
00072 int argvCount(/*@null@*/ const ARGV_t argv)
00073         /*@*/;
00074 
00080 /*@null@*/
00081 const ARGV_t argvData(/*@null@*/ const ARGV_t argv)
00082         /*@*/;
00083 
00090 /*@-exportlocal@*/
00091 int argvCmp(const void * a, const void * b)
00092         /*@*/;
00093 /*@=exportlocal@*/
00094 
00101 int argvSort(ARGV_t argv, int (*compar)(const void *, const void *))
00102         /*@modifies *argv @*/;
00103 
00111 /*@dependent@*/ /*@null@*/
00112 ARGV_t argvSearch(ARGV_t argv, ARGstr_t val,
00113                 int (*compar)(const void *, const void *))
00114         /*@*/;
00115 
00123 int argiAdd(/*@out@*/ ARGI_t * argip, int ix, int val)
00124         /*@modifies *argip @*/;
00125 
00132 int argvAdd(/*@out@*/ ARGV_t * argvp, ARGstr_t val)
00133         /*@modifies *argvp @*/;
00134 
00141 int argvAppend(/*@out@*/ ARGV_t * argvp, const ARGV_t av)
00142         /*@modifies *argvp @*/;
00143 
00151 int argvSplit(ARGV_t * argvp, const char * str, const char * seps)
00152         /*@modifies *argvp @*/;
00153 
00154 #ifdef __cplusplus
00155 }
00156 #endif
00157 
00158 #endif /* _H_ARGV_ */

Generated on Fri Oct 12 08:44:54 2007 for rpm by  doxygen 1.5.2