diff options
author | Bad Diode <bd@badd10de.dev> | 2021-10-25 12:37:25 +0200 |
---|---|---|
committer | Bad Diode <bd@badd10de.dev> | 2021-10-25 12:37:25 +0200 |
commit | b9644b4ccda5abee01fd0704ddc42b08b68e5b5d (patch) | |
tree | ed7d94f6f6ca242574234305c8574797cc6d22b0 /src/bytecode/chunk.h | |
parent | e2c284b57641b5feec9a8d04313b0cd6d556e860 (diff) | |
download | bdl-b9644b4ccda5abee01fd0704ddc42b08b68e5b5d.tar.gz bdl-b9644b4ccda5abee01fd0704ddc42b08b68e5b5d.zip |
Change chunk to store a name
Diffstat (limited to 'src/bytecode/chunk.h')
-rwxr-xr-x | src/bytecode/chunk.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/bytecode/chunk.h b/src/bytecode/chunk.h index 3e1c005..1e88ea0 100755 --- a/src/bytecode/chunk.h +++ b/src/bytecode/chunk.h | |||
@@ -2,6 +2,7 @@ | |||
2 | #define BDL_CHUNK_H | 2 | #define BDL_CHUNK_H |
3 | 3 | ||
4 | #include "darray.h" | 4 | #include "darray.h" |
5 | #include "string_view.h" | ||
5 | 6 | ||
6 | typedef struct Object Object; | 7 | typedef struct Object Object; |
7 | 8 | ||
@@ -14,9 +15,12 @@ typedef struct Chunk { | |||
14 | u8 *code; | 15 | u8 *code; |
15 | Object *constants; | 16 | Object *constants; |
16 | LineInfo *lines; | 17 | LineInfo *lines; |
18 | char *name; | ||
17 | } Chunk; | 19 | } Chunk; |
18 | 20 | ||
19 | Chunk * chunk_init(void); | 21 | #define NEW_CHUNK(NAME) chunk_init((StringView){(NAME), sizeof(NAME)}) |
22 | |||
23 | Chunk * chunk_init(StringView name); | ||
20 | void add_code(Chunk *chunk, u8 byte, size_t line, size_t col); | 24 | void add_code(Chunk *chunk, u8 byte, size_t line, size_t col); |
21 | size_t add_constant(Chunk *chunk, Object obj); | 25 | size_t add_constant(Chunk *chunk, Object obj); |
22 | void chunk_free(Chunk *chunk); | 26 | void chunk_free(Chunk *chunk); |