LIBXO(3)

NAME
xo_emit - emit formatted output based on format string and arguments

LIBRARY
libxo

SYNOPSIS
#include <libxo/xo.h>
void
typedef int (*xo_write_func_t)(void *, const char *);

typedef void (*xo_close_func_t)(void *);

typedef int (*xo_flush_func_t)(void *);
xo_set_writer(xo_handle_t *handle, void *opaque);
"xo_write_func_t write_func" "xo_close_func_t close_func" "xo_flush_func_t flush_func"

DESCRIPTION
The xo_set_writer() function allows custom “write” functions which can tailor how libxo writes data. An opaque argument is recorded and passed back to the write_func function, allowing the function to acquire context information. The close_func function can release this opaque data and any other resources as needed. The flush_func function should flush any pending data associated with the opaque pointer.

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