LIBXO(3)               FreeBSD Library Functions Manual               LIBXO(3)

NAME

     xo_emit_err, xo_emit_errc, xo_emit_errx xo_emit_warn, xo_emit_warnx,
     xo_emit_warn_c, xo_emit_warn_hc - emit errors and warnings in multiple
     output styles

LIBRARY

     Text, XML, JSON, and HTML Output Emission Library (libxo, -lxo)

SYNOPSIS

     #include <libxo/xo.h>

     void
     xo_emit_warn(const char *fmt, ...);

     void
     xo_emit_warnx(const char *fmt, ...);

     void
     xo_emit_warn_c(int code, const char *fmt, ...);

     void
     xo_emit_warn_hc(xo_handle_t *xop, int code, const char *fmt, ...);

     void
     xo_emit_err(int eval, const char *fmt, ...);

     void
     xo_emit_errc(int eval, int code, const char *fmt, ...);

     void
     xo_emit_errx(int eval, const char *fmt, ...);

DESCRIPTION

     Many programs make use of the standard library functions err(3) and
     warn(3) to generate errors and warnings for the user.  libxo wants to
     pass that information via the current output style, and provides
     compatible functions to allow this.

     The fmt argument is one compatible with xo_emit(3) which allows these
     functions make structured data.  To generate unstructured data, use the
     xo_err(3) functions.

     These functions display the program name, a colon, a formatted message
     based on the arguments, and then optionally a colon and an error message
     associated with either errno or the code parameter.

               EXAMPLE:
                   if (open(filename, O_RDONLY) < 0)
                       xo_err(1, "cannot open file '%s'", filename);

SEE ALSO

     xo_emit(3), xo_format(5), xo_err(3), libxo(3)

HISTORY

     The libxo library first appeared in FreeBSD 11.0.

AUTHORS

     libxo was written by Phil Shafer <phil@freebsd.org>.

FreeBSD 15.1-STABLE-HBSD       December 4, 2014                       LIBXO(3)