xo_create - Man Page
create and destroy libxo output handles
Library
Text, XML, JSON, and HTML Output Emission Library (libxo, -lxo)
Synopsis
#include <libxo/xo.h
>
xo_handle_t *
xo_create
(unsigned style, unsigned flags);
xo_handle_t *
xo_create_to_file
(FILE *fp, unsigned style, unsigned flags);
void
xo_destroy
(xo_handle_t *handle);
Description
A libxo handle can be allocated using the xo_create
() function.
Example: xo_handle_t *xop = xo_create(XO_STYLE_JSON, XOF_WARN); .... xo_emit_h(xop, "testing\n");
By default, libxo writes output to standard output. A convenience function is provided for situations when output should be written to a different file.
Use the XOF_CLOSE_FP
flag to trigger a call to fclose(3) for the FILE
pointer when the handle is destroyed.
The xo_destroy
() function releases a handle and any resources it is using. Calling xo_destroy
() with a NULL
handle will release any resources associated with the default handle.
See Also
History
The libxo library first appeared in FreeBSD 11.0.
Authors
libxo was written by Phil Shafer <phil@freebsd.org>.
Additional Documentation
FreeBSD uses libxo version 1.6.0. Complete documentation can be found on github:
https://juniper.github.io/libxo/1.6.0/html/index.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
History
The libxo library was added in FreeBSD 11.0.
Author
Phil Shafer
Referenced By
libxo(3), xo_message(3), xo_open_container(3).