DragonFly On-Line Manual Pages

Search: Section:  


LIBXO(3)              DragonFly Library Functions Manual              LIBXO(3)

NAME

xo_emit - emit formatted output based on format string and arguments

LIBRARY

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

SYNOPSIS

#include <libxo/xo.h> int xo_attr(const char *name, const char *fmt, ...); int xo_attr_h(xo_handle_t *handle, const char *name, const char *fmt, ...); int xo_attr_hv(xo_handle_t *handle, const char *name, const char *fmt, va_list vap);

DESCRIPTION

The xo_attr() function emits attributes for the XML output style. The attribute value is recorded in the handle and is attached to the next field that is emitted via a xo_emit(3) call. The name parameter give the name of the attribute to be encoded. The fmt parameter gives a printf-style format string used to format the value of the attribute using any remaining arguments, or the vap parameter as passed to xo_attr_hv(). EXAMPLE: xo_attr("seconds", "%ld", (unsigned long) login_time); struct tm *tmp = localtime(login_time); strftime(buf, sizeof(buf), "%R", tmp); xo_emit("Logged in at {:login-time}\n", buf); XML: <login-time seconds="1408336270">00:14</login-time> Since attributes are only emitted in XML, their use should be limited to meta-data and additional or redundant representations of data already emitted in other form.

ADDITIONAL DOCUMENTATION

Complete documentation can be found on github: http://juniper.github.io/libxo/libxo-manual.html libxo lives on github as: https://github.com/Juniper/libxo The latest release of libxo is available at: https://github.com/Juniper/libxo/releases

SEE ALSO

xo_emit(3)

HISTORY

The libxo library was added in FreeBSD 11.0.

AUTHOR

Phil Shafer DragonFly 6.5-DEVELOPMENT July, 2014 DragonFly 6.5-DEVELOPMENT

Search: Section: