diff options
Diffstat (limited to 'src/diagnostic/diagnostic.c')
-rw-r--r-- | src/diagnostic/diagnostic.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/diagnostic/diagnostic.c b/src/diagnostic/diagnostic.c new file mode 100644 index 0000000..0648abe --- /dev/null +++ b/src/diagnostic/diagnostic.c @@ -0,0 +1,59 @@ +/* + * The Rin Library – diagnostics module + * + * Copyright (C) 2015 Gediminas Jakutis + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; version 2.1 + * of the License. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "diagnostic_private.h" + +void rin_err(const char *format, ...) +{ + va_list args; + + va_start(args, format); + __rin_msg(stderr, "error", format, args); +} + +void rin_warn(const char *format, ...) +{ + va_list args; + + va_start(args, format); + __rin_msg(stderr, "warning", format, args); +} + +void rin_fixme(const char *format, ...) +{ + va_list args; + + va_start(args, format); + __rin_msg(stderr, "fixme", format, args); +} + +void rin_info(const char *format, ...) +{ + va_list args; + + va_start(args, format); + __rin_msg(stdout, "info", format, args); +} + +static void __rin_msg(FILE *stream, const char *prefix, const char *format, va_list args) +{ + fprintf(stream, "%s: ", prefix); + vfprintf(stream, format, args); +} |