diff options
author | Mattias Andrée <maandree@kth.se> | 2018-11-07 22:18:04 +0100 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2018-11-07 22:18:04 +0100 |
commit | 9fc2b129167e1f2a16d942369f057f618a00d81c (patch) | |
tree | c15d15d8afc525a423ce0d43d95f676e6e5a2541 /man3/libsimple_vweprintf.3 | |
parent | Add arrayalloc man page (diff) | |
download | libsimple-9fc2b129167e1f2a16d942369f057f618a00d81c.tar.gz libsimple-9fc2b129167e1f2a16d942369f057f618a00d81c.tar.bz2 libsimple-9fc2b129167e1f2a16d942369f057f618a00d81c.tar.xz |
Move section 3 man pages to man3/ and add libsimple.h.0
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'man3/libsimple_vweprintf.3')
-rw-r--r-- | man3/libsimple_vweprintf.3 | 221 |
1 files changed, 221 insertions, 0 deletions
diff --git a/man3/libsimple_vweprintf.3 b/man3/libsimple_vweprintf.3 new file mode 100644 index 0000000..06d339d --- /dev/null +++ b/man3/libsimple_vweprintf.3 @@ -0,0 +1,221 @@ +.TH LIBSIMPLE_VWEPRINTF 3 2018-11-06 libsimple +.SH NAME +libsimple_vweprintf \- print an error message +.SH SYNOPSIS +.nf +#include <libsimple.h> + +extern int libsimple_default_failure_exit; +extern void (*libsimple_eprint_preprint)(void); +extern void (*libsimple_eprint_postprint)(void); + +void libsimple_vweprintf(const char *\fIfmt\fP, va_list \fIap\fP); +static inline void libsimple_weprintf(const char *\fIfmt\fP, ...); +static inline void libsimple_venprintf(int \fIstatus\fP, const char *\fIfmt\fP, va_list \fIap\fP); +static inline void libsimple_enprintf(int \fIstatus\fP, const char *\fIfmt\fP, ...); +static inline void libsimple_veprintf(const char *\fIfmt\fP, va_list \fIap\fP); +static inline void libsimple_eprintf(const char *\fIfmt\fP, ...); + +#ifndef vweprintf +# define vweprintf libsimple_vweprintf +#endif +#ifndef weprintf +# define weprintf libsimple_weprintf +#endif +#ifndef venprintf +# define venprintf libsimple_venprintf +#endif +#ifndef enprintf +# define enprintf libsimple_enprintf +#endif +#ifndef veprintf +# define veprintf libsimple_veprintf +#endif +#ifndef eprintf +# define eprintf libsimple_eprintf +#endif +.fi +.PP +Link with +.IR \-lsimple . +.SH DESCRIPTION +The +.BR libsimple_vweprintf () +function is a version of the +.BR printf (3) +function. It prints the string to the standard error +(rather than the standard output), and attempts to +avoid output mangling in case multiple processes are +writting. Additionally, the output is suffixed with +.nf + + \fB\(dq %s\en\(dq, \fP<\fIerror message\fP> + +.fi +if +.I fmt +ends with a colon +.RB ( : ), +otherwise it is suffixed with a <newline> if +.I fmt +does not end with a <newline>; otherwise, if +.I fmt +is the empty string, the output is suffixed with +.nf + + \fB\(dq%s\en\(dq, \fP<\fIerror message\fP> + +.fi +Furthermore, if +.I argv0 +.RB ( "char *" ) +is non-null and +.I fmt +does not start with +.RB \(dq "usage :" \(dq, +the output is preffixed with +.nf + + \fB\(dq%s: \(dq, \fP\fIargv0\fP +.fi +.PP +The +.BR libsimple_weprintf () +function is a version of the +.BR libsimple_vweprintf () +function that uses variadic arguments instead of +.BR va_list . +.PP +The +.BR libsimple_venprintf () +and +.BR libsimple_enprintf () +functions are versions of the +.BR libsimple_vweprintf () +and +.BR libsimple_weprintf () +functions that terminate the process by calling +.BR exit (3), +the exit value of the process will be +.IR status . +.PP +The +.BR libsimple_veprintf () +and +.BR libsimple_eprintf () +functions are versions of the +.BR libsimple_vweprintf () +and +.BR libsimple_weprintf () +functions that terminate the process by calling +.BR exit (3), +the exit value of the process will be +.IR libsimple_default_failure_exit (3), +which is 1 by default. +.PP +The +.BR libsimple_vweprintf (), +.BR libsimple_weprintf (), +.BR libsimple_venprintf (), +.BR libsimple_enprintf (), +.BR libsimple_veprintf (), +and +.BR libsimple_eprintf () +functions call +.I libsimple_eprint_preprint +unless it is +.B NULL +before they print the message, after printing +the message they call +.I libsimple_eprint_postprint +unless it is +.BR NULL . +The +.I libsimple_eprint_preprint +and +.I libsimple_eprint_postprint +variables are +.B NULL +byte default. +.I errno +may have a different value from when the +.BR libsimple_vweprintf (), +.BR libsimple_weprintf (), +.BR libsimple_venprintf (), +.BR libsimple_enprintf (), +.BR libsimple_veprintf (), +or +.BR libsimple_eprintf () +function called when +.I libsimple_eprint_preprint +or +.I libsimple_eprint_postprint +is called. +.SH RETURN VALUE +None. +.SH ERRORS +None. +.SH ATTRIBUTES +For an explanation of the terms used in this section, see +.BR attributes (7). +.TS +allbox; +lb lb lb +l l l. +Interface Attribute Value +T{ +.BR libsimple_vweprintf (), +.br +.BR libsimple_weprintf (), +.br +.BR libsimple_venprintf (), +.br +.BR libsimple_enprintf (), +.br +.BR libsimple_veprintf (), +.br +.BR libsimple_eprintf () +T} Thread safety MT-Unsafe race:strerror +T{ +.BR libsimple_vweprintf (), +.br +.BR libsimple_weprintf (), +.br +.BR libsimple_venprintf (), +.br +.BR libsimple_enprintf (), +.br +.BR libsimple_veprintf (), +.br +.BR libsimple_eprintf () +T} Async-signal safety AS-Safe +T{ +.BR libsimple_vweprintf (), +.br +.BR libsimple_weprintf (), +.br +.BR libsimple_venprintf (), +.br +.BR libsimple_enprintf (), +.br +.BR libsimple_veprintf (), +.br +.BR libsimple_eprintf () +T} Async-cancel safety AC-Safe +.TE +.SH EXAMPLES +None. +.SH APPLICATION USAGE +None. +.SH RATIONALE +None. +.SH FUTURE DIRECTIONS +None. +.SH NOTES +None. +.SH BUGS +None. +.SH SEE ALSO +.BR perror (3), +.BR fprintf (3), +.BR exit (3) |