while.java

来自「编译原理“龙书”(Compilers: Principles, Techniqu」· Java 代码 · 共 22 行

JAVA
22
字号
package inter;import symbols.*;public class While extends Stmt {   Expr expr; Stmt stmt;   public While() { expr = null; stmt = null; }   public void init(Expr x, Stmt s) {      expr = x;  stmt = s;      if( expr.type != Type.Bool ) expr.error("boolean required in while");   }   public void gen(int b, int a) {      after = a;                // save label a      expr.jumping(0, a);      int label = newlabel();   // label for stmt      emitlabel(label); stmt.gen(label, b);      emit("goto L" + b);   }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?