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

📄 compilationunit.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.*;// 7.3 Compilation Unitspublic class CompilationUnit extends ASTNode<ASTNode> implements Cloneable {
    public void flushCache() {        super.flushCache();        relativeName_visited = -1;        pathName_visited = -1;        fromSource_visited = -1;        localLookupType_String_visited = new java.util.HashMap(4);        importedTypes_String_visited = new java.util.HashMap(4);        importedTypesOnDemand_String_visited = new java.util.HashMap(4);        dumpString_visited = -1;        packageName_visited = -1;        packageName_computed = false;        packageName_value = null;        lookupType_String_String_visited = new java.util.HashMap(4);        lookupType_String_visited = new java.util.HashMap(4);        lookupType_String_values = null;    }     @SuppressWarnings({"unchecked", "cast"})  public CompilationUnit clone() throws CloneNotSupportedException {        CompilationUnit node = (CompilationUnit)super.clone();        node.relativeName_visited = -1;        node.pathName_visited = -1;        node.fromSource_visited = -1;        node.localLookupType_String_visited = new java.util.HashMap(4);        node.importedTypes_String_visited = new java.util.HashMap(4);        node.importedTypesOnDemand_String_visited = new java.util.HashMap(4);        node.dumpString_visited = -1;        node.packageName_visited = -1;        node.packageName_computed = false;        node.packageName_value = null;        node.lookupType_String_String_visited = new java.util.HashMap(4);        node.lookupType_String_visited = new java.util.HashMap(4);        node.lookupType_String_values = null;        node.in$Circle(false);        node.is$Final(false);    return node;    }     @SuppressWarnings({"unchecked", "cast"})  public CompilationUnit copy() {      try {          CompilationUnit node = (CompilationUnit)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 CompilationUnit fullCopy() {        CompilationUnit res = (CompilationUnit)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 ClassPath.jrag at line 148  private String relativeName;    // Declared in ClassPath.jrag at line 149  private String pathName;    // Declared in ClassPath.jrag at line 150  private boolean fromSource;    // Declared in ClassPath.jrag at line 152  public void setRelativeName(String name) {    relativeName = name;  }    // Declared in ClassPath.jrag at line 155  public void setPathName(String name) {    pathName = name;  }    // Declared in ClassPath.jrag at line 158  public void setFromSource(boolean value) {    fromSource = value;  }    // Declared in ErrorCheck.jrag at line 67  protected java.util.ArrayList errors = new java.util.ArrayList();    // Declared in ErrorCheck.jrag at line 68  protected java.util.ArrayList warnings = new java.util.ArrayList();    // Declared in ErrorCheck.jrag at line 70  public Collection parseErrors() { return parseErrors; }    // Declared in ErrorCheck.jrag at line 71  public void addParseError(Problem msg) { parseErrors.add(msg); }    // Declared in ErrorCheck.jrag at line 72  protected Collection parseErrors = new ArrayList();    // Declared in ErrorCheck.jrag at line 230  public void errorCheck(Collection collection) {    collectErrors();    collection.addAll(errors);  }    // Declared in ErrorCheck.jrag at line 234  public void errorCheck(Collection err, Collection warn) {    collectErrors();    err.addAll(errors);    warn.addAll(warnings);  }    // Declared in NameCheck.jrag at line 35  public void nameCheck() {    for(int i = 0; i < getNumImportDecl(); i++) {      ImportDecl decl = getImportDecl(i);      if(decl instanceof SingleTypeImportDecl) {        if(localLookupType(decl.getAccess().type().name()).contains(decl.getAccess().type()))          error("" + decl + " is conflicting with visible type");      }    }  }    // Declared in PrettyPrint.jadd at line 44          public void toString(StringBuffer s) {    try {      if(!getPackageDecl().equals("")) {        s.append("package " + getPackageDecl() + ";\n");      }      for(int i = 0; i < getNumImportDecl(); i++) {        getImportDecl(i).toString(s);      }      for(int i = 0; i < getNumTypeDecl(); i++) {        getTypeDecl(i).toString(s);        s.append("\n");      }    } catch (NullPointerException e) {      System.out.print("Error in compilation unit hosting " + getTypeDecl(0).typeName());      throw e;    }  }    // Declared in java.ast at line 3    // Declared in java.ast line 4
    public CompilationUnit() {        super();
        setChild(new List(), 0);
        setChild(new List(), 1);

    }    // Declared in java.ast at line 12
    // Declared in java.ast line 4    public CompilationUnit(java.lang.String p0, List<ImportDecl> p1, List<TypeDecl> p2) {        setPackageDecl(p0);        setChild(p1, 0);        setChild(p2, 1);    }    // Declared in java.ast at line 19    // Declared in java.ast line 4    public CompilationUnit(beaver.Symbol p0, List<ImportDecl> p1, List<TypeDecl> p2) {        setPackageDecl(p0);        setChild(p1, 0);        setChild(p2, 1);    }    // Declared in java.ast at line 25  protected int numChildren() {
    return 2;
  }    // Declared in java.ast at line 28
  public boolean mayHaveRewrite() { return false; }    // Declared in java.ast at line 2    // Declared in java.ast line 4    private java.lang.String tokenjava_lang_String_PackageDecl;    // Declared in java.ast at line 3    public void setPackageDecl(java.lang.String value) {        tokenjava_lang_String_PackageDecl = value;    }    // Declared in java.ast at line 6    public int PackageDeclstart;    // Declared in java.ast at line 7    public int PackageDeclend;    // Declared in java.ast at line 8    public void setPackageDecl(beaver.Symbol symbol) {        if(symbol.value != null && !(symbol.value instanceof String))          throw new UnsupportedOperationException("setPackageDecl is only valid for String lexemes");        tokenjava_lang_String_PackageDecl = (String)symbol.value;        PackageDeclstart = symbol.getStart();        PackageDeclend = symbol.getEnd();    }    // Declared in java.ast at line 15    public java.lang.String getPackageDecl() {        return tokenjava_lang_String_PackageDecl != null ? tokenjava_lang_String_PackageDecl : "";    }    // Declared in java.ast at line 2    // Declared in java.ast line 4    public void setImportDeclList(List<ImportDecl> list) {        setChild(list, 0);    }    // Declared in java.ast at line 6    private int getNumImportDecl = 0;    // Declared in java.ast at line 7    public int getNumImportDecl() {        return getImportDeclList().getNumChild();    }    // Declared in java.ast at line 11     @SuppressWarnings({"unchecked", "cast"})  public ImportDecl getImportDecl(int i) {        return (ImportDecl)getImportDeclList().getChild(i);    }    // Declared in java.ast at line 15    public void addImportDecl(ImportDecl node) {        List<ImportDecl> list = getImportDeclList();        list.addChild(node);    }    // Declared in java.ast at line 20    public void setImportDecl(ImportDecl node, int i) {        List<ImportDecl> list = getImportDeclList();        list.setChild(node, i);    }    // Declared in java.ast at line 24    public List<ImportDecl> getImportDecls() {        return getImportDeclList();    }    // Declared in java.ast at line 27    public List<ImportDecl> getImportDeclsNoTransform() {        return getImportDeclListNoTransform();    }    // Declared in java.ast at line 31     @SuppressWarnings({"unchecked", "cast"})  public List<ImportDecl> getImportDeclList() {        return (List<ImportDecl>)getChild(0);    }    // Declared in java.ast at line 35     @SuppressWarnings({"unchecked", "cast"})  public List<ImportDecl> getImportDeclListNoTransform() {        return (List<ImportDecl>)getChildNoTransform(0);    }    // Declared in java.ast at line 2    // Declared in java.ast line 4    public void setTypeDeclList(List<TypeDecl> list) {        setChild(list, 1);    }    // Declared in java.ast at line 6    private int getNumTypeDecl = 0;    // Declared in java.ast at line 7    public int getNumTypeDecl() {        return getTypeDeclList().getNumChild();    }    // Declared in java.ast at line 11     @SuppressWarnings({"unchecked", "cast"})  public TypeDecl getTypeDecl(int i) {        return (TypeDecl)getTypeDeclList().getChild(i);    }    // Declared in java.ast at line 15    public void addTypeDecl(TypeDecl node) {        List<TypeDecl> list = getTypeDeclList();        list.addChild(node);    }    // Declared in java.ast at line 20    public void setTypeDecl(TypeDecl node, int i) {        List<TypeDecl> list = getTypeDeclList();        list.setChild(node, i);    }    // Declared in java.ast at line 24    public List<TypeDecl> getTypeDecls() {

⌨️ 快捷键说明

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