NAME
out, quiet, verb, err, errverb, sys, sysverb, add, adde, outdie, quietdie, verbdie, errdie, errverbdie, sysdie, sysverbdie - write text to standard output/error (and terminate process)
SYNOPSIS
#include <limb/output.h>
void quiet(...) void out(...) void verb(...) void err(...) void errverb(...) void sys(...) void sysverb(...) void dbg(...) void dbgverb(...) void add(...) void adde(...) void quietdie(exit, ...) void outdie(exit, ...) void verbdie(exit, ...) void errdie(exit, ...) void errverbdie(exit, ...) void sysdie(exit, ...) void sysverbdie(exit, ...)
DESCRIPTION
All of those are implemented as macros and will write to either standard output or standard error, then maybe terminate the calling process or return.
All of those are using output buffers obuffer_1 or obuffer_2 to write to stdout or stderr respectively. As such, data will also be written to any & all output buffers attached to the corresponding output buffer. See obuffer_attach(3) for more.
The macro out
() writes given strings to stdout buffers with level
OLVL_NORMAL or more, adding a newline and flushing out the buffer.
The macros quiet
() and verb
() are similar to out
(), only with OLVL_QUIET
and OLVL_VERBOSE levels respectively.
The macro err
() writes given strings to stderr buffers with level
OLVL_NORMAL or more, adding a newline and flushing out the buffer.
The macro errverb
() is similar only with OLVL_VERSOSE level.
The macro add
() writes given strings to stdout buffers with OLVL_NORMAL.
The macro adde
() writes given strings to stderr buffers with OLVL_NORMAL.
The macro sys
() is similar to err
() but will add a colon, a space and the
error description from strerror(3) on errno
after the given strings.
The macro sysverb
() is similar only with OLVL_VERSOSE level.
The macro dbg
() is similar to out
() but with level OLVL_DEBUG, and
prefixing with function name, file name and line number (see dbg_putmsg(3) for
more).
Macros quietdie
(), outdie
(), verbdie
(), errdie
(), errverbdie
(),
sysdie
() and sysverbdie
() are similar to quiet
(), out
(), verb
(),
err
(), errverb
(), sys
() and sysverb
() respectively but will terminate
the calling process (via _exit(3) using exit
as status code).
Escaping
It is possible to use PUTMSG_ESC (or simply ESC) as one of the strings in order to toggle escaping. See to buffer_putmsg(3) for more.
Numbers
It is possible to add a numbers into a message, to have its value written into the buffer into decimal form, through the use of macros :
PUTMSG_UINT(n
)
To have the value of unsigned number n
written out
PUTMSG_INT(n
)
Same as PUTMSG_UINT(n
) but for signed number
Refer to buffer_putmsg(3) for more.
Hexadecimal dump
It is possible to specify a byte-array whose content shall be written out as hexadecimal dump, through the use of macro PUTMSG_HEX (or simply HEX), taking two arguments : a pointer to the byte array, and its length.
For more, refer to buffer_putmsg(3).
SEE ALSO
out_putmsg(3), buffer_putmsg(3)