284 Commits

Author SHA1 Message Date
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
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
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
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
3eacdf6d39 fix: 数字字面量与位宽符号之间不允许有空白符 2025-06-30 16:21:01 +08:00
6a247f456c feat: NumberTokenScanner 增加规则约束 2025-06-29 23:56:21 +08:00
zhangxun
f3f8a8de70 refactor: OpHelper.java 2025-06-28 20:23:54 +08:00
ed99460850 style: 优化示例的格式 2025-06-28 17:32:04 +08:00
8ca3185bc7 refactor: 重构代码结构 2025-06-28 12:23:08 +08:00
zhangxun
5d621e06b5 fix: byte、short 位运算转为 int 的问题 2025-06-28 10:43:03 +08:00
zhangxun
22c7ec46f8 style: TokenStream.isAtEnd 返回值符合文档说明 2025-06-28 10:20:11 +08:00
fa91550ad7 feat: SnowVM 支持更多指令 2025-06-28 00:19:27 +08:00
de6df61960 feat: SnowVM 支持 S_XOR 2025-06-28 00:18:08 +08:00
2205ef46bb feat: SnowVM 支持 S_OR 2025-06-28 00:18:01 +08:00
39bc4b81ae feat: SnowVM 支持 S_AND 2025-06-28 00:17:56 +08:00
aef7e3b12a feat: SnowVM 支持 B_XOR 2025-06-28 00:17:39 +08:00
4f0ad45eca feat: SnowVM 支持 B_OR 2025-06-28 00:17:32 +08:00
11a90cb920 feat: SnowVM 支持 B_AND 2025-06-28 00:17:25 +08:00
a674235e39 docs: 完善 VMOpCode.java 的注释 2025-06-27 23:47:21 +08:00
ba37db19f4 Merge branch 'dev' into feat/refactor-opcode 2025-06-27 22:06:19 +08:00
35b29d71a1 fix: 修复嵌套模式数 2025-06-27 21:19:43 +08:00
6a940011a1 Merge branch 'dev' into feat/refactor-opcode
# Conflicts:
#	src/main/java/org/jcnc/snow/vm/engine/VMOpCode.java
2025-06-27 13:58:23 +08:00
zhangxun
237c35f0a0 fix: 部分代码嵌套模式数不正确的问题 2025-06-27 13:18:03 +08:00
zhangxun
43fd1d175d fix: 包名错误 2025-06-27 13:14:52 +08:00
zhangxun
8b421d3c92 fix: 语义分析报错显示未知位置 2025-06-27 13:13:41 +08:00
ec2068615e
!18 enhancement: 更好地显示字节码
Merge pull request !18 from zhangxun/feature/better-bytecode-display
2025-06-27 03:59:20 +00:00
zhangxun
c03761ed61 fix: byte、short 运算后会变为 int 的问题 2025-06-26 20:39:54 +08:00
zhangxun
c17ccc7540 style: 包名 org.jcnc.snow.compiler.backend.util 后面增加 s 2025-06-26 19:03:51 +08:00
2218128663 style:扩容opcode 2025-06-26 18:02:42 +08:00
40fc6383b1 style:统一规范 VMOpCod e命名 2025-06-26 18:02:22 +08:00
4aa1804d44 feat:Command[] 扩容到 0x04FF 2025-06-26 18:01:30 +08:00
64e5d4c401 style:调整间距 VMOpCode.java 2025-06-26 18:01:24 +08:00
3f5dd92af9 style:调整间距 VMOpCode.java 2025-06-26 12:14:47 +08:00
e53ebeba33 feat:增加 region 折叠 2025-06-25 18:21:44 +08:00
63fab9f028 feat:vm 增加 float32 比较指令 2025-06-25 17:29:52 +08:00