rpm: Argument Manipulation API.

rpm 4.10.0

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

Files | Functions
Argument Manipulation API.

## Files
file | argv.h
## Functions
void | argvPrint (const char *msg, ARGV_const_t argv, FILE *fp)
| Print argv array elements.
ARGI_t | argiFree (ARGI_t argi)
| Destroy an argi array.
ARGV_t | argvNew (void)
| Create an empty argv array.
ARGV_t | argvFree (ARGV_t argv)
| Destroy an argv array.
int | argiCount (ARGI_const_t argi)
| Return no.
ARGint_t | argiData (ARGI_const_t argi)
| Return data from argi array.
int | argvCount (ARGV_const_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 (qsort/bsearch).
int | argvSort (ARGV_t argv, int(*compar)(const void *, const void *))
| Sort an argv array.
ARGV_t | argvSearch (ARGV_const_t argv, const char *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, const char *val)
| Add a string to an argv array.
int | argvAddNum (ARGV_t *argvp, int val)
| Add a number to an argv array (converting to a string).
int | argvAppend (ARGV_t *argvp, ARGV_const_t av)
| Append one argv array to another.
ARGV_t | argvSplitString (const char *str, const char *seps, argvFlags flags)
| Split a string into an argv array.
int | argvSplit (ARGV_t *argvp, const char *str, const char *seps)
| Split a string into an argv array.
char * | argvJoin (ARGV_const_t argv, const char *sep)
| Join an argv array into a string.

## Function Documentation

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

Add an int to an argi array.

Return values:

  *argip | argi array

Parameters:

  ix | argi array index (or -1 to append)
  val | int arg to add

Returns:
  0 always

int argiCount | ( | ARGI_const_t | argi | ) |

Return no.

of elements in argi array.

Parameters:

  argi | argi array

Returns:
  no. of elements

ARGint_t argiData | ( | ARGI_const_t | argi | ) |

Return data from argi array.

Parameters:

  argi | argi array

Returns:
  argi array data address

ARGI_t argiFree | ( | ARGI_t | argi | ) |

Destroy an argi array.

Parameters:

  argi | argi array

Returns:
  NULL always

int argvAdd | ( | ARGV_t * | argvp,
|  | const char * | val
| ) |  |

Add a string to an argv array.

Return values:

  *argvp | argv array

Parameters:

  val | string arg to append

Returns:
  0 always

int argvAddNum | ( | ARGV_t * | argvp,
|  | int | val
| ) |  |

Add a number to an argv array (converting to a string).

Return values:

  *argvp | argv array

Parameters:

  val | numeric arg to append

Returns:
  0 always

int argvAppend | ( | ARGV_t * | argvp,
|  | ARGV_const_t | av
| ) |  |

Append one argv array to another.

Return values:

  *argvp | argv array

Parameters:

  av | argv array to append

Returns:
  0 always

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

Compare argv arrays (qsort/bsearch).

Parameters:

  a | 1st instance address
  b | 2nd instance address

Returns:
  result of comparison

int argvCount | ( | ARGV_const_t | argv | ) |

Return no.

of elements in argv array.

Parameters:

  argv | argv array

Returns:
  no. of elements

ARGV_t argvData | ( | ARGV_t | argv | ) |

Return data from argv array.

Parameters:

  argv | argv array

Returns:
  argv array data address

ARGV_t argvFree | ( | ARGV_t | argv | ) |

Destroy an argv array.

Parameters:

  argv | argv array

Returns:
  NULL always

Referenced by main().

char* argvJoin | ( | ARGV_const_t | argv,
|  | const char * | sep
| ) |  |

Join an argv array into a string.

Parameters:

  *argv | argv array to join
  sep | seperator string to use

Returns:
  malloc'ed string

Referenced by build().

ARGV_t argvNew | ( | void |  | ) |

Create an empty argv array.

Returns:
  pointer to empty argv

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

Print argv array elements.

Parameters:

  msg | output message prefix (or NULL)
  argv | argv array
  fp | output file handle (NULL uses stderr)

ARGV_t argvSearch | ( | ARGV_const_t | argv,
|  | const char * | val,
|  | int(*)(const void *, const void *) | compar
| ) |  |

Find an element in an argv array.

Parameters:

  argv | argv array
  val | string to find
  compar | strcmp-like comparison function, or NULL for argvCmp()

Returns:
  found string (NULL on failure)

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

Sort an argv array.

Parameters:

  argv | argv array
  compar | strcmp-like comparison function, or NULL for argvCmp()

Returns:
  0 always

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

Split a string into an argv array.

Return values:

  *argvp | argv array

Parameters:

  str | string arg to split
  seps | seperator characters

Returns:
  0 always

Referenced by buildArgCallback().

ARGV_t argvSplitString | ( | const char * | str,
|  | const char * | seps,
|  | argvFlags | flags
| ) |  |

Split a string into an argv array.

Parameters:

  str | string arg to split
  seps | seperator characters
  flags | flags to control behavior

Returns:
  argv array