From f185b126205f1ab19d0c07e11a044b6c8a7e7226 Mon Sep 17 00:00:00 2001 From: Luke Date: Thu, 17 Jul 2025 15:09:02 +0800 Subject: [PATCH 1/3] =?UTF-8?q?refactor(compiler):=20=E7=A7=BB=E9=99=A4=20?= =?UTF-8?q?OperatorTokenScanner=20=E4=B8=AD=E7=9A=84=E5=86=97=E4=BD=99?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了未使用的 State 枚举类 - 移除了冗余的 currentState 变量和相关逻辑 - 简化了代码结构,提高了代码可读性 --- .../lexer/scanners/OperatorTokenScanner.java | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/src/main/java/org/jcnc/snow/compiler/lexer/scanners/OperatorTokenScanner.java b/src/main/java/org/jcnc/snow/compiler/lexer/scanners/OperatorTokenScanner.java index 58bb1a9..9b278fa 100644 --- a/src/main/java/org/jcnc/snow/compiler/lexer/scanners/OperatorTokenScanner.java +++ b/src/main/java/org/jcnc/snow/compiler/lexer/scanners/OperatorTokenScanner.java @@ -47,10 +47,6 @@ public class OperatorTokenScanner extends AbstractTokenScanner { char c = ctx.advance(); String lexeme = String.valueOf(c); TokenType type = TokenType.UNKNOWN; - - // 当前状态 - State currentState = State.OPERATOR; - switch (c) { case '=': if (ctx.match('=')) { @@ -107,22 +103,10 @@ public class OperatorTokenScanner extends AbstractTokenScanner { break; default: - currentState = State.UNKNOWN; break; } - // 执行完扫描后,重置状态为初始状态 - if (currentState != State.UNKNOWN) { - currentState = State.START; - } - return new Token(type, lexeme, line, col); } - // 定义状态枚举 - private enum State { - START, // 初始状态 - OPERATOR, // 当前字符是运算符的一部分 - UNKNOWN // 无法识别的状态 - } } From 5c6f61f25a2ab47c9ba5370348b0f3584d858fd6 Mon Sep 17 00:00:00 2001 From: Luke Date: Thu, 17 Jul 2025 15:09:48 +0800 Subject: [PATCH 2/3] =?UTF-8?q?docs:=20=E6=9B=B4=E6=96=B0=20Snow-Lang=20?= =?UTF-8?q?=E8=AF=AD=E6=B3=95=E8=A7=84=E8=8C=83=E6=96=87=E6=A1=A3=E9=93=BE?= =?UTF-8?q?=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除了文档链接末尾的 ".md" 后缀 - 统一文档链接格式,与其他文档链接保持一致 --- README.md | 2 +- ...r-Specification.md.md => Snow-Lang-Grammar-Specification.md} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename docs/Snow-Lang-Syntax/{Snow-Lang-Grammar-Specification.md.md => Snow-Lang-Grammar-Specification.md} (100%) diff --git a/README.md b/README.md index da8a7f2..cd31809 100644 --- a/README.md +++ b/README.md @@ -71,7 +71,7 @@ Snow 语言受到 LLM 驱动代码生成趋势的启发,强调简单而清晰的 ## 相关文档 [Snow-Lang 指南](docs/Snow-Lang-Syntax/Snow-Lang-Syntax.md) -[Snow-Lang 语法规范](docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md) +[Snow-Lang 语法规范](docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification) [Git 管理规范](docs/Snow-Lang-Git-Management/Snow-Lang-Git-Management.md) diff --git a/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md.md b/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md similarity index 100% rename from docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md.md rename to docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md From 9acb52a7e1eeb4dedd38b2eea9f07a35932827ce Mon Sep 17 00:00:00 2001 From: Luke Date: Thu, 17 Jul 2025 15:22:15 +0800 Subject: [PATCH 3/3] =?UTF-8?q?docs:=20=E6=9B=B4=E6=96=B0=E6=9E=84?= =?UTF-8?q?=E9=80=A0=E5=87=BD=E6=95=B0=E9=87=8D=E8=BD=BD=E7=A4=BA=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了示例代码中的多余空行 - 修正了示例代码的格式问题 --- docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md b/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md index 58fa46e..d8a816a 100644 --- a/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md +++ b/docs/Snow-Lang-Syntax/Snow-Lang-Grammar-Specification.md @@ -553,8 +553,6 @@ end module ## 11 · 构造函数重载示例 -**示例: ** - ````snow struct: Point declare x: int