summaryrefslogtreecommitdiff
path: root/src/lib/aplwc_internal.h
diff options
context:
space:
mode:
authorpeter <peter@pmikkelsen.com>2026-08-25 20:56:55 +0000
committerpeter <peter@pmikkelsen.com>2026-08-25 20:56:55 +0000
commit86a65e695b9dc1fb7a20094204339f5bf168fb92 (patch)
treec4ab839a70c830097103d33797fedf01261d1800 /src/lib/aplwc_internal.h
parent956cfb9ac26f44d05ffc446f30f84174865685a4 (diff)
Start working on modules, including a built-in "boot" module
FossilOrigin-Name: 4829dbeb2071fe0be41ded66a61ba2e156119a47def8a23415b8227a00d53ce7
Diffstat (limited to 'src/lib/aplwc_internal.h')
-rw-r--r--src/lib/aplwc_internal.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/lib/aplwc_internal.h b/src/lib/aplwc_internal.h
index 33feafb..b027073 100644
--- a/src/lib/aplwc_internal.h
+++ b/src/lib/aplwc_internal.h
@@ -36,7 +36,13 @@ enum token_tag {
TOKEN_TAG_NEWLINE,
TOKEN_TAG_NUMBER,
TOKEN_TAG_LEFT_ARROW,
- TOKEN_TAG_DIAMOND
+ TOKEN_TAG_DIAMOND,
+ TOKEN_TAG_KEYWORD,
+ TOKEN_TAG_TEXT,
+ TOKEN_TAG_DEL,
+ TOKEN_TAG_LEFT_PAREN,
+ TOKEN_TAG_RIGHT_PAREN,
+ TOKEN_TAG_IBEAM
};
struct token {
@@ -77,11 +83,14 @@ void memory_free_token_list(struct memory *, struct token_list *);
void memory_free_aplwc_value(struct memory *, struct aplwc_value *);
/* string.c */
-struct string *chars_to_string(struct aplwc *, const char *);
+struct string *chars_to_string(struct aplwc *, const char *, int len);
uint32_t string_char(struct string *, size_t);
size_t char_length(struct string *, size_t);
/* syntax.c */
-struct token_list *scan_line(struct aplwc *, struct string *);
+struct token_list *scan_string(struct aplwc *, struct string *, int);
+
+/* module.c */
+enum aplwc_rc load_module(struct aplwc *, struct string *, struct token_list *);
#endif /* APLWC_INTERNAL_H */