From 7c03dc797ea3ac5f41ced2a79b5c254557355a84 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 13 Jun 2026 21:52:06 +0100 Subject: Add "import" and "from" keywords --- src/main/java/org/zwobble/hobgoblin/compiler/parser/TokenType.java | 2 ++ src/main/java/org/zwobble/hobgoblin/compiler/parser/Tokenizer.java | 4 ++++ 2 files changed, 6 insertions(+) (limited to 'src/main/java/org/zwobble') diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/parser/TokenType.java b/src/main/java/org/zwobble/hobgoblin/compiler/parser/TokenType.java index 85ac1b9..f7242e2 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/parser/TokenType.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/parser/TokenType.java @@ -7,6 +7,8 @@ enum TokenType { WHITESPACE, KEYWORD_FIELD, + KEYWORD_FROM, + KEYWORD_IMPORT, KEYWORD_NATIVE, KEYWORD_STRUCT, KEYWORD_SUM, diff --git a/src/main/java/org/zwobble/hobgoblin/compiler/parser/Tokenizer.java b/src/main/java/org/zwobble/hobgoblin/compiler/parser/Tokenizer.java index 8e70291..7db0806 100644 --- a/src/main/java/org/zwobble/hobgoblin/compiler/parser/Tokenizer.java +++ b/src/main/java/org/zwobble/hobgoblin/compiler/parser/Tokenizer.java @@ -124,6 +124,10 @@ class Tokenizer { TokenType tokenType; if (CharSequence.compare(sourceRange.charSequence(), "field") == 0) { tokenType = TokenType.KEYWORD_FIELD; + } else if (CharSequence.compare(sourceRange.charSequence(), "from") == 0) { + tokenType = TokenType.KEYWORD_FROM; + } else if (CharSequence.compare(sourceRange.charSequence(), "import") == 0) { + tokenType = TokenType.KEYWORD_IMPORT; } else if (CharSequence.compare(sourceRange.charSequence(), "native") == 0) { tokenType = TokenType.KEYWORD_NATIVE; } else if (CharSequence.compare(sourceRange.charSequence(), "struct") == 0) { -- cgit v1.2.3