474 Commits

Author SHA1 Message Date
08cfc1ffb9 test: 修改 Bug1 2025-07-17 17:06:39 +08:00
59aef0c661 feat: 添加 SYSCALL 操作码的详细注释并移除未使用的 DEBUG_TRAP 操作码
- 为 SYSCALL 操作码添加了详细的注释,说明了其执行步骤和实现类- 注释掉了未使用的 DEBUG_TRAP 操作码
- 引入了 SyscallCommand 类以实现 SYSCALL 操作码的功能
2025-07-17 17:05:48 +08:00
23c6de3601 feat: 添加 SyscallCommand 类实现系统调用功能
- 新增 SyscallCommand 类,用于处理系统调用命令(opcode =0x0401)
2025-07-17 17:04:38 +08:00
bf9190dec6 refactor: 移除调试用指令 DEBUG_TRAP
移除了 OpHelper 类中 DEBUG_TRAP 指令的映射,以减少不必要的代码。这个修改对现有的功能没有影响,只是为了简化代码结构。
2025-07-17 17:04:12 +08:00
3758e3da40 feat: 添加 SyscallCommand 实现
- 在 CommandFactory 中为 VMOpCode.SYSCALL 添加了 SyscallCommand 实现
- 解除了对 SYSCALL 命令的注释,使其可以被使用
2025-07-17 17:03:49 +08:00
bfcfcbb107 refactor: 优化字符串扫描器代码
- 移除了类 StringTokenScanner 中的作者和年份信息
- 删除了冗余的代码注释,提高了代码的可读性和维护性
2025-07-17 15:25:25 +08:00
e6ad4ff282 refactor: 重构字符串扫描器实现
- 优化了 StringTokenScanner 类的文档注释,增加了状态机说明
-重新组织了代码结构,提高了可读性和可维护性
- 添加了对未闭合字符串的处理逻辑,增强了健壮性
- 优化了状态机实现,保证了字符串解析的准确性
2025-07-17 15:24:46 +08:00
5f0931155d Merge remote-tracking branch 'gitee/feature/optimize-lexical-error-messages' into feature/optimize-lexical-error-messages 2025-07-17 15:23:46 +08:00
e4c6faf923 docs: 更新构造函数重载示例
- 删除了示例代码中的多余空行
- 修正了示例代码的格式问题
2025-07-17 15:22:58 +08:00
593930ccfc docs: 更新 Snow-Lang 语法规范文档链接
- 移除了文档链接末尾的 ".md" 后缀
- 统一文档链接格式,与其他文档链接保持一致
2025-07-17 15:22:58 +08:00
7f09b0e501 refactor: 移除 OperatorTokenScanner 中的冗余状态管理
- 删除了未使用的 State 枚举类
- 移除了冗余的 currentState 变量和相关逻辑
- 简化了代码结构,提高了代码可读性
2025-07-17 15:22:57 +08:00
9acb52a7e1 docs: 更新构造函数重载示例
- 删除了示例代码中的多余空行
- 修正了示例代码的格式问题
2025-07-17 15:22:15 +08:00
5c6f61f25a docs: 更新 Snow-Lang 语法规范文档链接
- 移除了文档链接末尾的 ".md" 后缀
- 统一文档链接格式,与其他文档链接保持一致
2025-07-17 15:09:48 +08:00
f185b12620 refactor(compiler): 移除 OperatorTokenScanner 中的冗余状态管理
- 删除了未使用的 State 枚举类
- 移除了冗余的 currentState 变量和相关逻辑
- 简化了代码结构,提高了代码可读性
2025-07-17 15:09:02 +08:00
d0e8cee6bd feat: 支持数字字面量中的下划线分隔符
- 增加了对数字中下划线的处理逻辑
- 添加了防止下划线连续出现、以下划线开头或结尾的校验
- 优化了小数部分的下划线检查
- 修复了数字后紧跟下划线的错误处理
- 最后返回的数字字面量中将移除所有的下划线
2025-07-17 11:47:19 +08:00
ac5b73e320 feat: 适配 Windows 换行符
- 修改 NewlineTokenScanner 以支持 \r\n 换行符
- 增加对 \r 换行符的处理
- 优化 scanToken 方法,兼容不同操作系统换行符
2025-07-17 11:27:03 +08:00
69b4a418ba refactor: 优化词法分析器引擎代码
- 格式化代码,提高可读性
- 修改错误消息构造方式,简化为接收完整消息字符串- 更新注释,准备后续具体功能改动
2025-07-17 11:18:35 +08:00
2093201173 test: 修改为最新的bug 2025-07-17 00:04:16 +08:00
268f1aa09a refactor: 简化词法异常错误信息
- 移除了错误信息中的"词法错误:"前缀,使信息更加简洁
- 保留了非法字符序列和位置信息,确保错误定位准确
2025-07-16 23:52:22 +08:00
cc106f57e1 refactor: 优化编译流程,词法分析有错误时立即终止
- 在语法分析之前增加对词法分析错误的检查
- 若词法阶段存在错误,立即终止编译,避免进入后续的语法及语义分析
- 这种优化可以减少不必要的计算,提高编译效率
2025-07-16 23:37:15 +08:00
93a553ea93 fix: 修复数字和标识符区分错误
- 新增 skipInvalidLexeme 方法,用于跳过无效的标识符和数字字符
- 修改错误处理逻辑,遇到词法错误时调用 skipInvalidLexeme 方法
2025-07-16 23:16:12 +08:00
f23e15339c refactor: 删除了 LexicalException 类中的冗余空行 2025-07-16 22:21:56 +08:00
2be4848735 refactor: 移除词法分析中的异常抛出 2025-07-16 22:21:41 +08:00
c4d9be8403 fix: 修复数字字面量解析中的错误处理
- 增加对数字后紧跟未知标识符的错误处理
- 增加对数字后紧跟下划线的错误处理
- 优化数字类型后缀的处理逻辑,防止多字符后缀
2025-07-16 22:14:40 +08:00
4a26bd50ca refactor: 优化词法分析错误输出格式
-将错误信息前的缩进从两个空格改为一个制表符,提高可读性
2025-07-16 21:34:11 +08:00
e931d9ec06 style:优化代码格式和注释 2025-07-16 21:31:07 +08:00
f540d7fad5 refactor: 移除词法异常中的错误消息 2025-07-16 18:00:38 +08:00
3d35e81a97 refactor: 优化词法错误异常信息格式
- 修改了 LexicalException 类中错误信息的显示格式
- 新格式:文件名 + "行 " +行号 + ", 列 " + 列号 + ": " +错误类型 + ": " +详细信息
- 旧格式:文件名 + ":" + 行号 + ":" + 列号 + ": " + 错误类型 + " '" + 详细信息 + "'"
2025-07-16 11:26:12 +08:00
f6382c4ccd refactor(compiler): 修改词法错误信息为中文
- 将 LexicalException 类中的英文错误信息改为中文
- 例:将 "Lexical error: Illegal character sequence '@' at 2:19" 改为 "词法错误:非法字符序列 '@' at2:19"
2025-07-16 10:57:44 +08:00
cd64137148 refactor: 优化词法异常的错误信息提示
- 将英文错误信息改为中文,提高用户的可读性和理解度
2025-07-16 10:57:29 +08:00
eae66eac8c docs: 优化 LexicalError 类的文档注释
- 为 LexicalError 类添加详细的类文档注释,说明其用途
- 为所有字段和构造方法添加规范的参数注释
- 优化 toString 方法的注释,明确其返回值内容
2025-07-16 10:57:13 +08:00
85d3b129ae
!39 refactor: 重构循环语句解析器
Merge pull request !39 from Luke/feature/optimize-the-loop
2025-07-16 02:15:15 +00:00
zhangxun
3b168a134a fix: 对齐 ASTPrinter 中 loop 的输出(cond 和 step) 2025-07-16 09:23:49 +08:00
zhangxun
59fdc6b39e docs: 对齐注释 2025-07-16 09:22:26 +08:00
2a31d57a53 chore: 删除规则文件说明 2025-07-15 22:18:35 +08:00
8f96716ac4 docs:优化数值类型和字面量表格的 Markdown 格式
- 调整数值类型表格的格式,使其更加简洁易读
- 优化字面量后缀表格的布局,提高可读性
- 统一表格样式,去掉多余的空格和竖线
2025-07-15 00:03:34 +08:00
d8e3fb6e9c Merge remote-tracking branch 'origin/feature/optimize-the-loop' into feature/optimize-the-loop 2025-07-14 23:52:47 +08:00
536ee64f6d refactor: 修改保留关键字并使用缩写
- 更新保留关键字集合,将 'initializer'缩写为 'init','condition' 缩写为 'cond','update' 缩写为 'step'
2025-07-14 23:52:29 +08:00
054ab5d63d refactor: 重构 SnowExample 中的循环结构
- 将 loop 节点下的子节点名称从 initializer 改为 init
- 将 loop 节点下的子节点名称从 condition改为 cond
- 将 loop 节点下的子节点名称从 update 改为 step
2025-07-14 23:52:29 +08:00
d2732857f1 refactor: 重构 SnowExample 中的循环结构
- 将 loop 节点下的子节点名称从 initializer 改为 init
- 将 loop 节点下的子节点名称从 condition改为 cond
- 将 loop 节点下的子节点名称从 update 改为 step
2025-07-14 23:52:29 +08:00
fb1c54998b refactor: 重构循环语句解析器
- 简化了循环语句各区块的名称,提高代码可读性
- 更新了代码注释,使其与新的区块名称保持一致- 修改了变量命名,以更好地反映其对应的循环语句部分- 优化了代码结构,提高了维护性和可扩展性
2025-07-14 23:52:29 +08:00
2c4850cc8f refactor: 重构 LoopNode 类的参数名称
- 将 initializer 参数重命名为 init
- 将 condition 参数重命名为 cond- 将 update 参数重命名为 step
2025-07-14 23:52:29 +08:00
b135a4b37b refactor: 重构循环语句分析逻辑
- 修改初始化语句、条件表达式和更新语句的分析方法
- 优化代码结构,提高可读性和可维护性
- 适应新的语法树节点命名
2025-07-14 23:52:29 +08:00
d92e3d0e17 refactor: 更新 matchHeader 函数参数注释
- 将关键字参数注释中的 "initializer" 改为 "init",以匹配实际代码中的使用
2025-07-14 23:52:29 +08:00
bc309dfa97 refactor: 重构 ASTPrinter 类中的代码
- 修改了 IfNode 和 LoopNode 的打印逻辑
- 优化了变量命名,提高了代码可读性
- 调整了缩进和格式,保持代码风格一致性
2025-07-14 23:52:29 +08:00
1141abf231 refactor: 重构循环语句节点的序列化逻辑
- 修改 Declaration 节点中的 initializer 字段名称为 init
- 修改 If 节点中的 condition 字段名称为 cond
- 修改 Loop 节点中 initializer、condition 和 update 字段名称分别为 init、cond 和 step
2025-07-14 23:52:29 +08:00
e2896eb37d docs: 重构循环和条件语句的命名
- 将 loop 语句中的 initializer 改为 init
- 将 condition 改为 cond
- 将 update 改为 step
- 更新了相关文档和示例代码
2025-07-14 23:46:51 +08:00
e18d7426bc refactor: 重构死循环测试用例
- 将 initializer 改为 init
- 将 condition 改为 cond
- 将 update 改为 step
2025-07-14 23:46:51 +08:00
c1d0e03b6c docs: 更新语法规范并添加项目规则说明
- 更新 Snow 语言语法规范,调整错误分类表格格式和示例代码结构
2025-07-14 23:46:50 +08:00
d2a6bde8cd docs: 更新语法规范并添加项目规则说明
- 更新 Snow 语言语法规范,调整错误分类表格格式和示例代码结构
2025-07-14 23:03:09 +08:00