X-Git-Url: https://www.kengrimes.com/gitweb/?p=henge%2Fapc.git;a=blobdiff_plain;f=src%2Fprint.h;h=2f449706114ab234d7d598d0281a05998d13bb6d;hp=6e1c4ba8d8c2950720b01924fca4e1e6ce0b1456;hb=0628265d7e697838d836c292d77d0e4ba1b72bbd;hpb=390722f04a69f8f2233bfed59031cf32ca262c85 diff --git a/src/print.h b/src/print.h index 6e1c4ba..2f44970 100644 --- a/src/print.h +++ b/src/print.h @@ -11,28 +11,45 @@ #ifndef DEBUG #define DEBUG 0 #endif +/* wprintf callback, may be defined prior to include + or undefined and redefined later +*/ +#ifndef wprintf_callback +#define wprintf_callback(...) do { \ + } while (0) +#endif +/* eprintf callback, may be defined prior to include + or undefined and redefined later +*/ +#ifndef eprintf_callback +#define eprintf_callback(...) do { \ + } while (0) +#endif + +/* Print a unicode string */ #define uprintf(...) do { \ - ulc_fprintf(stdout, __VA_ARGS__); \ + ulc_fprintf(stdout, __VA_ARGS__); \ } while (0) +/* Print a unicode string to a filestream */ #define ufprintf(_STREAM,...) do { \ - ulc_fprintf(_STREAM, __VA_ARGS__); \ - } while (0) -#define do_warn(...) do { \ + ulc_fprintf(_STREAM, __VA_ARGS__); \ } while (0) +/* Print a warning message to stderr, then do_warn */ #define wprintf(...) do { \ ufprintf(stderr, __VA_ARGS__); \ - do_warn(__VA_ARGS__); \ - } while (0) -#define do_error(...) do { \ + wprintf_callback(__VA_ARGS__); \ } while (0) +/* Print an error message to stderr, then do_error */ #define eprintf(...) do { \ ufprintf(stderr, __VA_ARGS__); \ - do_error(__VA_ARGS_); \ + eprintf_callback(__VA_ARGS_); \ } while (0) +/* Print only when the provided boolean is true */ #define bprintf(_BOOL,...) do { \ if (_BOOL) \ ufprintf(stdout, __VA_ARGS__); \ } while (0) +/* Print only when DEBUG is set to a value */ #define dprintf(...) do { \ bprintf(DEBUG, __VA_ARGS__); \ } while (0)