⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 typeaccess.java

📁 JDK1.4编译器前端
💻 JAVA
📖 第 1 页 / 共 2 页
字号:

package AST;
import java.util.HashSet;import java.util.LinkedHashSet;import java.io.FileNotFoundException;import java.io.File;import java.util.*;import beaver.*;import java.util.ArrayList;import java.util.zip.*;import java.io.*;public class TypeAccess extends Access implements Cloneable {
    public void flushCache() {        super.flushCache();        decls_visited = -1;        decls_computed = false;        decls_value = null;        decl_visited = -1;        decl_computed = false;        decl_value = null;        qualifiedLookupVariable_String_visited = new java.util.HashMap(4);        dumpString_visited = -1;        name_visited = -1;        packageName_visited = -1;        nameWithPackage_visited = -1;        typeName_visited = -1;        isTypeAccess_visited = -1;        predNameType_visited = -1;        type_visited = -1;        type_computed = false;        type_value = null;        staticContextQualifier_visited = -1;    }     @SuppressWarnings({"unchecked", "cast"})  public TypeAccess clone() throws CloneNotSupportedException {        TypeAccess node = (TypeAccess)super.clone();        node.decls_visited = -1;        node.decls_computed = false;        node.decls_value = null;        node.decl_visited = -1;        node.decl_computed = false;        node.decl_value = null;        node.qualifiedLookupVariable_String_visited = new java.util.HashMap(4);        node.dumpString_visited = -1;        node.name_visited = -1;        node.packageName_visited = -1;        node.nameWithPackage_visited = -1;        node.typeName_visited = -1;        node.isTypeAccess_visited = -1;        node.predNameType_visited = -1;        node.type_visited = -1;        node.type_computed = false;        node.type_value = null;        node.staticContextQualifier_visited = -1;        node.in$Circle(false);        node.is$Final(false);    return node;    }     @SuppressWarnings({"unchecked", "cast"})  public TypeAccess copy() {      try {          TypeAccess node = (TypeAccess)clone();          if(children != null) node.children = (ASTNode[])children.clone();          return node;      } catch (CloneNotSupportedException e) {      }      System.err.println("Error: Could not clone node of type " + getClass().getName() + "!");      return null;    }     @SuppressWarnings({"unchecked", "cast"})  public TypeAccess fullCopy() {        TypeAccess res = (TypeAccess)copy();        for(int i = 0; i < getNumChildNoTransform(); i++) {          ASTNode node = getChildNoTransform(i);          if(node != null) node = node.fullCopy();          res.setChild(node, i);        }        return res;    }    // Declared in AccessControl.jrag at line 128    public void accessControl() {    super.accessControl();    TypeDecl hostType = hostType();    if(hostType != null && !hostType.isUnknown() && !type().accessibleFrom(hostType)) {      error("" + this + " in " + hostType().fullName() + " can not access type " + type().fullName());    }    else if((hostType == null || hostType.isUnknown())  && !type().accessibleFromPackage(hostPackage())) {      error("" + this + " can not access type " + type().fullName());    }  }    // Declared in NameCheck.jrag at line 155    public void nameCheck() {    if(isQualified() && !qualifier().isTypeAccess() && !qualifier().isPackageAccess())      error("can not access the type named " + decl().typeName() + " in this context");    if(decls().isEmpty())      error("no visible type named " + typeName());    if(decls().size() > 1) {      StringBuffer s = new StringBuffer();      s.append("several types named " + name() + ":");      for(Iterator iter = decls().iterator(); iter.hasNext(); ) {        TypeDecl t = (TypeDecl)iter.next();        s.append(" " + t.typeName());      }      error(s.toString());    }  }    // Declared in NodeConstructors.jrag at line 23  public TypeAccess(String name, int start, int end) {    this(name);    this.start = start;    this.end = end;  }    // Declared in NodeConstructors.jrag at line 44  public TypeAccess(String typeName) {    this("", typeName);  }    // Declared in PrettyPrint.jadd at line 499    public void toString(StringBuffer s) {    if(decl().isReferenceType())      s.append(nameWithPackage());    else      s.append(decl().name());  }    // Declared in java.ast at line 3    // Declared in java.ast line 20
    public TypeAccess() {        super();

    }    // Declared in java.ast at line 10
    // Declared in java.ast line 20    public TypeAccess(String p0, String p1) {        setPackage(p0);        setID(p1);    }    // Declared in java.ast at line 16    // Declared in java.ast line 20    public TypeAccess(beaver.Symbol p0, beaver.Symbol p1) {        setPackage(p0);        setID(p1);    }    // Declared in java.ast at line 21  protected int numChildren() {
    return 0;
  }    // Declared in java.ast at line 24
  public boolean mayHaveRewrite() { return false; }    // Declared in java.ast at line 2    // Declared in java.ast line 20    private String tokenString_Package;    // Declared in java.ast at line 3    public void setPackage(String value) {        tokenString_Package = value;    }    // Declared in java.ast at line 6    public int Packagestart;    // Declared in java.ast at line 7    public int Packageend;    // Declared in java.ast at line 8    public void setPackage(beaver.Symbol symbol) {        if(symbol.value != null && !(symbol.value instanceof String))          throw new UnsupportedOperationException("setPackage is only valid for String lexemes");        tokenString_Package = (String)symbol.value;        Packagestart = symbol.getStart();        Packageend = symbol.getEnd();    }    // Declared in java.ast at line 15    public String getPackage() {        return tokenString_Package != null ? tokenString_Package : "";    }    // Declared in java.ast at line 2    // Declared in java.ast line 20    private String tokenString_ID;    // Declared in java.ast at line 3    public void setID(String value) {        tokenString_ID = value;    }    // Declared in java.ast at line 6    public int IDstart;    // Declared in java.ast at line 7    public int IDend;    // Declared in java.ast at line 8    public void setID(beaver.Symbol symbol) {        if(symbol.value != null && !(symbol.value instanceof String))

⌨️ 快捷键说明

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