calloutarglist.java

来自「用Java实现的编译器。把源代码编译成SPARC汇编程序」· Java 代码 · 共 54 行

JAVA
54
字号
package CatDecaf.IR; // Java Package generated by the BNF Converter.
import parser.*;

public class CallOutArgList implements CatDecaf.Utilities.Visitable
{
  public CallOutArg callOutArg_;
  public CallOutArgList callOutArgList_;
  public boolean scanf_Flag;
  public int listSize;

  public CallOutArgList(CallOutArg p1, CallOutArgList p2)
  	{ callOutArg_ = p1; callOutArgList_ = p2;
	   int preIndex = -1;
	   if (callOutArgList_ == null)
	   	preIndex = -1;
	   else
	   	preIndex = callOutArgList_.callOutArg_.getIndex();

	   callOutArg_.setIndex(preIndex+1);
           scanf_Flag = false;
           listSize = -1;
  	}


  public CallOutArgList reverse()
  {
    if (callOutArgList_ == null) return this;
    else
    {
      CallOutArgList tmp = callOutArgList_.reverse(this);
      callOutArgList_ = null;
      return tmp;
    }
  }
  public CallOutArgList reverse(CallOutArgList prev)
  {
    if (callOutArgList_ == null)
    {
      callOutArgList_ = prev;
      return this;
    }
    else
    {
      CallOutArgList tmp = callOutArgList_.reverse(this);
      callOutArgList_ = prev;
      return tmp;
    }
  }
  public void setScanf_Flag(){
    scanf_Flag = true;
  }
  public void accept(CatDecaf.Utilities.Visitor v) { v.visit(this); }
}

⌨️ 快捷键说明

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