summaryrefslogtreecommitdiff
path: root/docs/application/error.md
blob: 2e1e7030af92129eba9cd65a316eafedbd7f53b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Error

---

## Object Definitions

```c
typedef union : uin16_t {
    ERROR_C         = 1 << 0,
    ERROR_TOKEN     = 1 << 1,
    ERROR_TYPE      = 1 << 2
} kpl_error_flags;

typedef struct _kpl_error {
    uint16_t line, flags;
    uin32_t class_options;
    struct _kpl_error *stack;
    union {
        struct {
            char *file, char *function;
        } c;
        kpl_token token;
        kpl_type *type;
    } source;
    kpl_class class;
} kpl_error;
```