25 lines
372 B
C
25 lines
372 B
C
|
#ifndef RZ_ERR_H
|
||
|
#define RZ_ERR_H
|
||
|
|
||
|
#define RZ_ERROR_STACK_SIZE 256
|
||
|
|
||
|
#include "commons.h"
|
||
|
|
||
|
typedef struct {
|
||
|
char* what;
|
||
|
int line;
|
||
|
} err_msg_t;
|
||
|
|
||
|
typedef struct {
|
||
|
size_t size;
|
||
|
err_msg_t* errors[RZ_ERROR_STACK_SIZE];
|
||
|
} err_t;
|
||
|
|
||
|
void err_init(err_t* err);
|
||
|
void err_free(err_t* err);
|
||
|
|
||
|
void err_error(err_t* err, char* what, int line);
|
||
|
void err_abort(err_t* err);
|
||
|
|
||
|
#endif
|