libexplain  1.4.D001
Functions
libexplain/vasprintf_or_die.c File Reference
#include <libexplain/ac/errno.h>
#include <libexplain/ac/stdarg.h>
#include <libexplain/ac/stdio.h>
#include <libexplain/output.h>
#include <libexplain/vasprintf.h>

Go to the source code of this file.

Functions

int explain_vasprintf_or_die (char **data, const char *format, va_list ap)
int explain_vasprintf_on_error (char **data, const char *format, va_list ap)

Function Documentation

int explain_vasprintf_on_error ( char **  data,
const char *  format,
va_list  ap 
)

The explain_vasprintf_on_error function is used to call the vasprintf(3) system call. On failure an explanation will be printed to stderr, obtained from the explain_vasprintf(3) function.

Parameters:
dataThe data, exactly as to be passed to the vasprintf(3) system call.
formatThe format, exactly as to be passed to the vasprintf(3) system call.
apThe ap, exactly as to be passed to the vasprintf(3) system call.
Returns:
The value returned by the wrapped vasprintf(3) system call.
Example:
This function is intended to be used in a fashion similar to the following example:
 errno = 0;
 int result = explain_vasprintf_on_error(data, format, ap);
 if (result < 0 || errno != 0)
 {
     ...cope with error
     ...no need to print error message
 }

Definition at line 46 of file vasprintf_or_die.c.

int explain_vasprintf_or_die ( char **  data,
const char *  format,
va_list  ap 
)

The explain_vasprintf_or_die function is used to call the vasprintf(3) system call. On failure an explanation will be printed to stderr, obtained from the explain_vasprintf(3) function, and then the process terminates by calling exit(EXIT_FAILURE).

Parameters:
dataThe data, exactly as to be passed to the vasprintf(3) system call.
formatThe format, exactly as to be passed to the vasprintf(3) system call.
apThe ap, exactly as to be passed to the vasprintf(3) system call.
Returns:
This function only returns on success, see vasprintf(3) for more information. On failure, prints an explanation and exits, it does not return.
Example:
This function is intended to be used in a fashion similar to the following example:
 int result = explain_vasprintf_or_die(data, format, ap);

Definition at line 28 of file vasprintf_or_die.c.