Data Structures | Typedefs | Functions

rpmio/argv.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  ARGI_s

Typedefs

typedef const char * ARGstr_t
typedef ARGstr_tARGV_t
typedef uint32_t * ARGint_t
typedef struct ARGI_sARGI_t

Functions

void argvPrint (const char *msg, ARGV_t argv, FILE *fp)
 Print argv array elements.
ARGI_t argiFree (ARGI_t argi)
 Destroy an argi array.
ARGV_t argvFree (ARGV_t argv)
 Destroy an argv array.
int argiCount (const ARGI_t argi)
 Return no.
ARGint_t argiData (ARGI_t argi)
 Return data from argi array.
int argvCount (const ARGV_t argv)
 Return no.
ARGV_t argvData (ARGV_t argv)
 Return data from argv array.
int argvCmp (const void *a, const void *b)
 Compare argv arrays using strcmp (qsort/bsearch).
int argvStrcasecmp (const void *a, const void *b)
 Compare argv arrays using strcasecmp (qsort/bsearch).
int argvSort (ARGV_t argv, int(*compar)(const void *, const void *))
 Sort an argv array.
ARGV_t argvSearch (ARGV_t argv, ARGstr_t val, int(*compar)(const void *, const void *))
 Find an element in an argv array.
int argiAdd (ARGI_t *argip, int ix, int val)
 Add an int to an argi array.
int argvAdd (ARGV_t *argvp, ARGstr_t val)
 Add a string to an argv array.
int argvAppend (ARGV_t *argvp, const ARGV_t av)
 Append one argv array to another.
int argvSplit (ARGV_t *argvp, const char *str, const char *seps)
 Split a string into an argv array.
char * argvJoin (ARGV_t argv)
 Concatenate an argv array into a string.
int argvFgets (ARGV_t *argvp, void *fd)
 Read lines into an argv array.

Detailed Description

Definition in file argv.h.


Typedef Documentation

typedef struct ARGI_s* ARGI_t

Definition at line 16 of file argv.h.

typedef uint32_t* ARGint_t

Definition at line 11 of file argv.h.

typedef const char* ARGstr_t

Definition at line 8 of file argv.h.

typedef ARGstr_t* ARGV_t

Definition at line 9 of file argv.h.


Function Documentation

int argiAdd ( ARGI_t argip,
int  ix,
int  val 
)

Add an int to an argi array.

Return values:
*argipargi array
Parameters:
ixargi array index (or -1 to append)
valint arg to add
Returns:
0 always

Definition at line 151 of file argv.c.

References ARGI_s::nvals, ARGI_s::vals, xcalloc(), and xrealloc().

Referenced by rpmfcApply(), and rpmfcClassify().

int argiCount ( const ARGI_t  argi )

Return no.

of elements in argi array.

Parameters:
argiargi array
Returns:
no. of elements

Definition at line 50 of file argv.c.

References ARGI_s::nvals.

Referenced by main(), rpmfcApply(), and rpmfcGenerateDepends().

ARGint_t argiData ( ARGI_t  argi )

Return data from argi array.

Parameters:
argiargi array
Returns:
argi array data address

Definition at line 58 of file argv.c.

References ARGI_s::nvals, and ARGI_s::vals.

Referenced by rpmfcGenerateDepends().

ARGI_t argiFree ( ARGI_t  argi )

Destroy an argi array.

Parameters:
argiargi array
Returns:
NULL always

Definition at line 29 of file argv.c.

References _free(), ARGI_s::nvals, and ARGI_s::vals.

Referenced by rpmfcFree().

int argvAdd ( ARGV_t argvp,
ARGstr_t  val 
)

Add a string to an argv array.

Return values:
*argvpargv array
Parameters:
valstring arg to append
Returns:
0 always

Definition at line 172 of file argv.c.

References argvCount(), xrealloc(), and xstrdup().

Referenced by argvFgets(), missingokTag(), rpmcliInstall(), rpmfcClassify(), rpmfcSaveArg(), rpmteChain(), and unsatisfiedDepend().

int argvAppend ( ARGV_t argvp,
const ARGV_t  av 
)

Append one argv array to another.

Return values:
*argvpargv array
Parameters:
avargv array to append
Returns:
0 always

Definition at line 189 of file argv.c.

References argvCount(), xrealloc(), and xstrdup().

Referenced by rpmfcExec(), and rpmgiGlobArgv().

int argvCmp ( const void *  a,
const void *  b 
)

Compare argv arrays using strcmp (qsort/bsearch).

Parameters:
a1st instance address
b2nd instance address
Returns:
result of comparison

Definition at line 82 of file argv.c.

Referenced by argvSearch(), and argvSort().

int argvCount ( const ARGV_t  argv )

Return no.

of elements in argv array.

Parameters:
argvargv array
Returns:
no. of elements

Definition at line 66 of file argv.c.

Referenced by argvAdd(), argvAppend(), argvSearch(), argvSort(), hSaveBlinks(), hSaveFlinks(), main(), packageSources(), rpmfcApply(), rpmfcClassify(), rpmfcExpandAppend(), rpmfcGenerateDepends(), and rpmfcHelper().

ARGV_t argvData ( ARGV_t  argv )

Return data from argv array.

Parameters:
argvargv array
Returns:
argv array data address

Definition at line 75 of file argv.c.

Referenced by hSaveBlinks(), hSaveFlinks(), and rpmfcGenerateDepends().

int argvFgets ( ARGV_t argvp,
void *  fd 
)

Read lines into an argv array.

Return values:
*argvpargv array
Parameters:
fdrpmio FD_t (NULL uses stdin)
Returns:
0 on success

Definition at line 265 of file argv.c.

References argvAdd(), argvFree(), and fdGetFILE.

Referenced by main().

ARGV_t argvFree ( ARGV_t  argv )

Destroy an argv array.

Parameters:
argvargv array
Returns:
NULL always

Definition at line 39 of file argv.c.

References _free().

Referenced by argvFgets(), delTE(), missingokTag(), packageSources(), rpmcliInstall(), rpmdsNew(), rpmfcClassify(), rpmfcExec(), rpmfcFree(), rpmfcGenerateDepends(), rpmfcHelper(), rpmfiNew(), rpmgiFree(), rpmgiGlobArgv(), rpmtsFree(), tagClean(), tagLoadATags(), and unsatisfiedDepend().

char* argvJoin ( ARGV_t  argv )

Concatenate an argv array into a string.

Parameters:
argvargv array
Returns:
concatenated string

Definition at line 241 of file argv.c.

References stpcpy(), and xmalloc().

Referenced by getOutputFrom().

void argvPrint ( const char *  msg,
ARGV_t  argv,
FILE *  fp 
)

Print argv array elements.

Parameters:
msgoutput message prefix (or NULL)
argvargv array
fpoutput file handle (NULL uses stderr)

Definition at line 14 of file argv.c.

Referenced by rpmtsFree().

ARGV_t argvSearch ( ARGV_t  argv,
ARGstr_t  val,
int(*)(const void *, const void *)  compar 
)

Find an element in an argv array.

Parameters:
argvargv array
valstring to find
comparstrcmp-like comparison function, or NULL for argvCmp()
Returns:
found string (NULL on failure)

Definition at line 120 of file argv.c.

References argvCmp(), and argvCount().

Referenced by findPreambleTag(), isPart(), rpmfcClassify(), and rpmfcSaveArg().

int argvSort ( ARGV_t  argv,
int(*)(const void *, const void *)  compar 
)

Sort an argv array.

Parameters:
argvargv array
comparstrcmp-like comparison function, or NULL for argvCmp()
Returns:
0 always

Definition at line 112 of file argv.c.

References argvCmp(), and argvCount().

Referenced by main(), rpmfcSaveArg(), and tagLoadATags().

int argvSplit ( ARGV_t argvp,
const char *  str,
const char *  seps 
)

Split a string into an argv array.

Return values:
*argvpargv array
Parameters:
strstring arg to split
sepsseparator characters (NULL is C isspace() chars)
Returns:
0 always

Definition at line 204 of file argv.c.

References xmalloc(), and xstrdup().

Referenced by _RequestPass(), rpmfcHelper(), tagLoadATags(), and unsatisfiedDepend().

int argvStrcasecmp ( const void *  a,
const void *  b 
)

Compare argv arrays using strcasecmp (qsort/bsearch).

Parameters:
a1st instance address
b2nd instance address
Returns:
result of comparison

Definition at line 89 of file argv.c.

References xstrcasecmp().

Referenced by findPreambleTag(), and isPart().