FreeBSD manual
download PDF document: xo_set_program.3.pdf
LIBXO(3) FreeBSD Library Functions Manual LIBXO(3)
NAME
xo_parse_args, xo_set_program - detect, parse, and remove arguments for
libxo
LIBRARY
Text, XML, JSON, and HTML Output Emission Library (libxo, -lxo)
SYNOPSIS
#include <libxo/xo.h>
int
xo_parse_args(int argc, char **argv);
int
xo_set_program(const char *name);
DESCRIPTION
The xo_parse_args() function is used to process command-line arguments,
which are described in xo_options(7). libxo specific options are
processed and removed from the argument list so the calling application
does not need to process them. If successful, a new value for argc is
returned. On failure, a message it emitted and -1 is returned.
argc = xo_parse_args(argc, argv);
if (argc < 0)
exit(EXIT_FAILURE);
Following the call to xo_parse_args(), the application can process the
remaining arguments in a normal manner.
The xo_set_program() function sets name of the program as reported by
functions like xo_failure(), xo_warn(), xo_err(), etc. The program name
is initialized by xo_parse_args(), but subsequent calls to
xo_set_program() can override this value.
Note that the value is not copied, so the memory passed to
xo_set_program() (and xo_parse_args()) must be maintained by the caller.
SEE ALSO
xo_emit(3), xo_options(7,) libxo(3)
HISTORY
The libxo library first appeared in FreeBSD 11.0.
AUTHORS
libxo was written by Phil Shafer <phil@freebsd.org>.
FreeBSD 14.0-RELEASE-p11 November 17, 2020 FreeBSD 14.0-RELEASE-p11