455 Commits

Author SHA1 Message Date
84a6b2701c
!25 fix: AOT 编译后无法定位语义错误
Merge pull request !25 from zhangxun/bugfix/aot-semantic-error-unknown-location
2025-07-08 02:35:36 +00:00
46e913a37b Merge branch 'dev' into bugfix/aot-semantic-error-unknown-location 2025-07-07 11:16:12 +08:00
53fafabb1a
!24 bug: 修复编译死循环
Merge pull request !24 from Luke/bugfix/parser-endless-loop
2025-07-07 03:15:06 +00:00
506bf193d5 chore: 修改IDEA配置让.water输出到target目录后不污染根目录 2025-07-07 00:26:36 +08:00
0ea8cb352d refactor: 重构数字字面量扫描逻辑
- 优化了 NumberTokenScanner 类的代码结构
- 改进了数字字面量的扫描逻辑,包括整数和小数部分
- 调整了后缀和非法字符的检查策略
- 优化了错误处理和异常抛出的逻辑
- 移除了未使用的代码和不必要的注释
2025-07-07 00:02:31 +08:00
cb208bb8af test: 修改为最新测试代码 2025-07-06 23:57:58 +08:00
e11d519627 refactor: 重构语法分析模块并优化错误处理机制
- 优化了 ExpressionStatementParser、FlexibleSectionParser 和 JSONParser 的代码结构
- 改进了模块解析器 (ModuleParser) 的实现
- 重构了语法异常 (ParseException) 类,增加了错误位置信息
- 新增 ParseError 类用于收集和展示语法错误信息
- 改进了同步机制以更好地恢复解析过程
2025-07-05 17:02:45 +08:00
e33f6b0ce2 fix: 修复数字后空格后接上非法后缀进入死循环的错误 2025-07-05 14:20:43 +08:00
00afda56bb
!26 fix: CleanTask 将 build 目录删除导致无法将字节码写入目标文件
Merge pull request !26 from zhangxun/bugfix/cli-clean-and-compile-run
2025-07-05 02:55:17 +00:00
zhangxun
699bc2721e docs: 优化方法文档的主描述部分,以更好地显示参数名 2025-07-05 10:41:21 +08:00
zhangxun
a1b92f0cc8 style: 移除没必要的局部变量 2025-07-05 10:37:28 +08:00
zhangxun
3c43e31afb refactor: 优化 clean 命令的逻辑,使其符合直觉 2025-07-05 10:35:33 +08:00
169523bc33 style: 修改代码缩进 2025-07-04 23:58:58 +08:00
b626208771 chore: 增加测试配置文件 2025-07-03 23:51:00 +08:00
f1086a1ef9 feat: 统一 parser 的异常 2025-07-03 23:49:26 +08:00
b730b53f7b style: 修复代码缩进异常 2025-07-03 21:56:33 +08:00
zhangxun
a6c251c8da fix: CleanTask 将 build 目录删除导致无法将字节码写入目标文件 2025-07-02 22:43:09 +08:00
zhangxun
55ab421d88 fix: AOT 编译后无法定位语义错误 2025-07-02 22:10:16 +08:00
bb4c4f6ce4 feat: StringTokenScanner 重构为状态机 2025-07-01 17:17:23 +08:00
367ae8653e feat: OperatorTokenScanner 重构为状态机 2025-07-01 17:14:40 +08:00
dbc3ea0a33 feat: NewlineTokenScanner 重构为状态机 2025-07-01 17:10:11 +08:00
51f5ba9884 test: 更新demo11 2025-07-01 17:09:52 +08:00
e83244df61 feat: LexerEngine 增加后置整体校验 2025-07-01 17:02:35 +08:00
b43245b1f5 refactor: IdentifierTokenScanner 重构为状态机 2025-07-01 17:02:01 +08:00
ded31578d7 refactor: CommentTokenScanner 重构为状态机 2025-07-01 14:52:33 +08:00
114958d992 chore: IDEA 配置文件修改,让.water文件进入target文件夹 2025-07-01 11:28:42 +08:00
3bff750fc9 fix: NumberTokenScanner.java 中修复了 “数字字面量与类型后缀之间不允许有空白符” 的误判逻辑 2025-07-01 11:17:49 +08:00
0a218f995e fix: 修复循环条件 2025-07-01 11:07:30 +08:00
7b9bd37900 feat: 支持行内注释 2025-07-01 10:45:56 +08:00
4507e3589f fix: NumberTokenScanner 移除数字字面量后直接跟 / 的规则 2025-07-01 09:55:21 +08:00
6ae6d6e893 chore: IDEA 点击运行后"Run tool 窗口"会出现 2025-07-01 09:34:38 +08:00
c88404fada refactor: 重构为基于有限状态机(FSM)的注释解析器 2025-07-01 00:15:14 +08:00
30b89c0f3d fix: 统一哨兵值 2025-06-30 23:42:52 +08:00
2a085f6906 docs: 修复注释格式 2025-06-30 23:42:34 +08:00
f4568f82a4 fix: 编译遇到词法错误立即终止 2025-06-30 23:42:14 +08:00
e9939e73c1 fix: 删除 LexerEngine.java 的冗余代码 2025-06-30 17:54:30 +08:00
f9a65531c1 refactor: 重构为基于有限状态机(FSM)的数字字面量解析器 2025-06-30 17:52:37 +08:00
ce4106743a docs: 完善 LexerEngine.java 的注释 2025-06-30 17:51:01 +08:00
67d2b58231 feat: 默认启动报告 2025-06-30 16:52:53 +08:00
dc32f00ead test: 修复 demo1 2025-06-30 16:21:48 +08:00
3eacdf6d39 fix: 数字字面量与位宽符号之间不允许有空白符 2025-06-30 16:21:01 +08:00
6a247f456c feat: NumberTokenScanner 增加规则约束 2025-06-29 23:56:21 +08:00
cb4faf0632 chore: 增加 Bug1 配置文件 2025-06-29 18:28:43 +08:00
5e0d31f3ad test: 增加 Bug1 至 BugFarm 2025-06-29 18:24:34 +08:00
0d8e26d2cc chore: 增加 Demo11 配置文件 2025-06-29 18:23:58 +08:00
zhangxun
eee77ea451 style: 统一代码实现 2025-06-28 21:08:49 +08:00
zhangxun
3466c27c9e docs: 修改拼写错误 2025-06-28 21:07:07 +08:00
zhangxun
fe9a8e7505 feat: 支持 long64 转 byte8、short16 2025-06-28 21:04:23 +08:00
zhangxun
ec94191153 feat: 支持 float32 转 byte8、short16 2025-06-28 21:02:30 +08:00
zhangxun
ccc9e3e50f feat: 支持 double64 转 byte8、short16 2025-06-28 21:00:09 +08:00