ACPI AML decompiler w/ CFG recovery and structured pseudocode
1#ifndef TOBI_DG_H
2#define TOBI_DG_H
3
4#include <stddef.h>
5
6typedef enum tobi_diag_level {
7 TOBI_DIAG_WARN,
8 TOBI_DIAG_ERROR
9} tobi_diag_level;
10
11typedef struct tobi_diag {
12 tobi_diag_level level;
13 size_t off;
14 char *msg;
15} tobi_diag;
16
17typedef struct tobi_diag_list {
18 tobi_diag *items;
19 size_t len;
20 size_t cap;
21} tobi_diag_list;
22
23void tobi_diag_init(tobi_diag_list *dl);
24
25void tobi_diag_free(tobi_diag_list *dl);
26
27void tobi_diag_add(tobi_diag_list *dl, tobi_diag_level level, size_t off, const char *fmt, ...);
28
29int tobi_diag_has_error(const tobi_diag_list *dl);
30
31const char *tobi_diag_level_name(tobi_diag_level level);
32
33#endif