package IC.Hierarchy; import IC.Error.*; import IC.Semantic.*; import IC.SymbolTable.*; import IC.LowIR.*; /** *
Title:
*Description:
*Copyright: Copyright (c) 2003
*Company:
* @author unascribed * @version 1.0 */ public class This extends Expr{ public void print(){ fprintln(nodenum+": "+"This();"); } public Object accept(Visitor v, SymTable st) throws SemanticError { return (v.visit(this, st)); } public Var translate(){ IC.Type.Type typ = tableRef.lookupType("this"); boolean b = false; if((typ instanceof IC.Type.ClassType)|(typ instanceof IC.Type.StringType)|(typ instanceof IC.Type.ArrayType)) b= true; return new Var("this",tableRef,b); } }