else.java
来自「用java实现的编译器. 包括语法分析」· Java 代码 · 共 24 行
JAVA
24 行
package inter;import symbols.*;public class Else extends Stmt { Expr expr; Stmt stmt1,stmt2; public Else(Expr x, Stmt s1, Stmt s2){ expr = x; stmt1 = s1; stmt2 = s2; if(expr.type != Type.Bool) expr.error("boolean required in Else"); } public void gen(int b, int a) { int label1 = newlabel(); int label2 = newlabel(); expr.jumping(0, label2); emitlabel(label1); stmt1.gen(label1, a); emit("goto L" + a); emitlabel(label2); stmt2.gen(label2, a); }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?