From 466b6ca2bec63c90798b878c7700237759e5223a Mon Sep 17 00:00:00 2001 From: Luke Date: Thu, 31 Jul 2025 12:48:10 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E7=A7=BB=E9=99=A4=20VMCodeGenerato?= =?UTF-8?q?r=20=E4=B8=AD=E7=9A=84=E5=86=97=E4=BD=99=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 删除了 VMCodeGenerator 类中不再使用的 currentFn 字段- 将 currentFn 作为局部变量在 generate 方法中使用 - 这个改动简化了类的结构,减少了冗余代码 --- .../snow/compiler/backend/builder/VMCodeGenerator.java | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/main/java/org/jcnc/snow/compiler/backend/builder/VMCodeGenerator.java b/src/main/java/org/jcnc/snow/compiler/backend/builder/VMCodeGenerator.java index 98c490d..e764e41 100644 --- a/src/main/java/org/jcnc/snow/compiler/backend/builder/VMCodeGenerator.java +++ b/src/main/java/org/jcnc/snow/compiler/backend/builder/VMCodeGenerator.java @@ -35,12 +35,6 @@ public final class VMCodeGenerator { */ private final VMProgramBuilder out; - /** - * 当前正在处理的函数名。 - * 用于区分是否为 main 函数等用途。 - */ - private String currentFn; - /** * 构造 VMCodeGenerator。 * @@ -72,7 +66,7 @@ public final class VMCodeGenerator { * @throws IllegalStateException 如果遇到不支持的 IR 指令类型 */ public void generate(IRFunction fn) { - this.currentFn = fn.name(); + String currentFn = fn.name(); out.beginFunction(currentFn); for (IRInstruction ins : fn.body()) { @SuppressWarnings("unchecked")