Welcome to little lamb

Code » limb » master » tree

[master] / src / doc / output.h / output.h.0.md

% limb manual
% output.h(0)
% limb 0.1.0
% 2023-07-24

# NAME

output.h - writing to stdout/stderr


# SYNOPSIS

    #include <limb/output.h>

    const char *PROG

# DESCRIPTION

This header defines functions used to write messages/warnings to stdout or
stderr.

Most of the following are implemented as macros to [obuffer_putmsg](3), using
either *obuffer_1* or *obuffer_2*. Messages can also end up written to other
output buffers if they were attached. For more, refer to [obuffer.h](0).

## Functions

The following functions/macros are defined :

: [add](3)
:: Write given strings to *stdout* buffers with level *OLVL_NORMAL* or more

: [adde](3)
:: Write given strings to *stderr* buffers with level *OLVL_NORMAL* or more

: [dbg](3)
:: Write given strings to *stdout* buffers with level *OLVL_DEBUG* or more,
:: prefixing with function name, file name and line number, adding a LF and
:: flushing the buffer afterwards

: [dbgverb](3)
:: Same as [dbg](3) but with *OLVL_MAXIMUM*

: [die](3)
:: Same as [errdie](3) but prefixed with "*PROG*: "

: [diecmdusage](3)
:: Same as [dieusage](3) but adds the command's name and usage.

: [diecmdhelp](3)
:: Same as [diehelp](3) but adds the command's name, usage and show its help
:: screen.

: [dief](3)
:: Same as [die](3) but with an extra "fatal: "

: [diefu](3)
:: Same as [dief](3) but with an extra "unable to "

: [diesys](3)
:: Same as [sysdie](3) but prefixed with "*PROG*: "

: [diefsys](3)
:: Same as [diesys](3) but with an extra "fatal: "

: [diefusys](3)
:: Same as [diefsys](3) but with an extra "unable to "

: [diehelp](3)
:: Write given usage string to *stderr* prefixed with "usage: *PROG* ", a blank
:: line, then the help string; and end program execution using given exit code

: [dieusage](3)
:: Write given string to *stderr* prefixed with "usage: *PROG* " and end
:: program execution using given exit code

: [dieversion](3)
:: Write a version and copyright message to *stdout*

: [err](3)
:: Write given strings to *stderr* buffers with level *OLVL_NORMAL* or more,
:: adding a LF and flushing the buffer afterwards

: [errdie](3)
:: Same as [err](3) but ends program execution using given exit code

: [errhelp](3)
:: Same as [diehelp](3)  but does /not/ end program execution.

: [errverb](3)
:: Same as [err](3) but with *OLVL_VERBOSE*

: [list_matches](3)
:: To list all matching element from a partial match in an array of strings.

: [list_matches_full](3)
:: To list all matching element from a partial match in an array.

: [out](3)
:: Write given strings to *stdout* buffers with level *OLVL_NORMAL* or more,
:: adding a LF and flushing the buffer afterwards

: [outdie](3)
:: Same as [out](3) but ends program execution using given exit code

: [quiet](3)
:: Same as [out](3) but with *OLVL_QUIET*

: [sys](3)
:: Same as [err](3) with adding a colon, a space and the error description for
:: `errno` before the LF

: [sysdie](3)
:: Same as [sys](3) but ends program execution using given exit code

: [sysverb](3)
:: Same as [sys](3) but with *OLVL_VERBOSE*

: [verb](3)
:: Same as [out](3) but with *OLVL_VERBOSE*

: [warn](3)
:: Write a warning to *stderr* buffers with level *OLVL_NORMAL* or more

: [warnsys](3)
:: Same as [warn](3) but adding error description after the warning

: [warnu](3)
:: Same as [warn](3) but starting the warning with "unable to "

: [warnusys](3)
:: Same as [warnsys](3) but starting the warning with "unable to "

## Macros

The following macros are defined :

: [retw](3)
:: Same as [warn](3) then return the given value

: [retwu](3)
:: Same as [warnu](3) then return the given value

: [retwsys](3)
:: Same as [warnsys](3) then return the given value

: [retwusys](3)
:: Same as [warnusys](3) then return the given value