From de39a41da62c4b3820b4805ddb7c4970c36bc257 Mon Sep 17 00:00:00 2001 From: "Rafael G. Martins" Date: Sat, 18 Apr 2015 17:17:37 -0300 Subject: added loader, error handling and cli. tests needed --- src/error.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/error.h (limited to 'src/error.h') diff --git a/src/error.h b/src/error.h new file mode 100644 index 0000000..98aeeb9 --- /dev/null +++ b/src/error.h @@ -0,0 +1,34 @@ +/* + * blogc: A blog compiler. + * Copyright (C) 2015 Rafael G. Martins + * + * This program can be distributed under the terms of the BSD License. + * See the file COPYING. + */ + +#ifndef _ERROR_H +#define _ERROR_H + +#include +#include +#include "utils/utils.h" + +typedef enum { + BLOGC_ERROR_SOURCE_PARSER = 1, + BLOGC_ERROR_TEMPLATE_PARSER, + BLOGC_ERROR_LOADER, +} blogc_error_type_t; + +typedef struct { + char *msg; + blogc_error_type_t type; +} blogc_error_t; + +blogc_error_t* blogc_error_new(blogc_error_type_t type, const char *msg); +blogc_error_t* blogc_error_new_printf(blogc_error_type_t type, const char *format, ...); +blogc_error_t* blogc_error_parser(blogc_error_type_t type, const char *src, + size_t src_len, size_t current, const char *format, ...); +void blogc_error_print(blogc_error_t *err); +void blogc_error_free(blogc_error_t *err); + +#endif /* _ERROR_H */ -- cgit v1.2.3-18-g5258