bodydecl.java

来自「JDK1.4编译器后端」· Java 代码 · 共 281 行

JAVA
281
字号

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 abstract class BodyDecl extends ASTNode<ASTNode> implements Cloneable {
    public void flushCache() {        super.flushCache();        isDAafter_Variable_values = null;        isDUafter_Variable_values = null;        attributes_computed = false;        attributes_value = null;        isDAbefore_Variable_values = null;        isDUbefore_Variable_values = null;        typeThrowable_computed = false;        typeThrowable_value = null;        lookupVariable_String_values = null;    }     @SuppressWarnings({"unchecked", "cast"})  public BodyDecl clone() throws CloneNotSupportedException {        BodyDecl node = (BodyDecl)super.clone();        node.isDAafter_Variable_values = null;        node.isDUafter_Variable_values = null;        node.attributes_computed = false;        node.attributes_value = null;        node.isDAbefore_Variable_values = null;        node.isDUbefore_Variable_values = null;        node.typeThrowable_computed = false;        node.typeThrowable_value = null;        node.lookupVariable_String_values = null;        node.in$Circle(false);        node.is$Final(false);    return node;    }    // Declared in BranchTarget.jrag at line 211  public void collectFinally(Stmt branchStmt, ArrayList list) {    // terminate search if body declaration is reached  }    // Declared in GenerateClassfile.jrag at line 242    public void generateMethod(DataOutputStream out, ConstantPool cp) throws IOException {  }    // Declared in GenerateClassfile.jrag at line 261    public void touchMethod(ConstantPool cp) {  }    // Declared in java.ast at line 3    // Declared in java.ast line 69
    public BodyDecl() {        super();

    }    // Declared in java.ast at line 9
  protected int numChildren() {
    return 0;
  }    // Declared in java.ast at line 12
  public boolean mayHaveRewrite() { return false; }    protected java.util.Map isDAafter_Variable_values;    // Declared in DefiniteAssignment.jrag at line 245 @SuppressWarnings({"unchecked", "cast"})     public boolean isDAafter(Variable v) {        Object _parameters = v;if(isDAafter_Variable_values == null) isDAafter_Variable_values = new java.util.HashMap(4);        if(isDAafter_Variable_values.containsKey(_parameters))            return ((Boolean)isDAafter_Variable_values.get(_parameters)).booleanValue();        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        boolean isDAafter_Variable_value = isDAafter_compute(v);        if(isFinal && num == boundariesCrossed)            isDAafter_Variable_values.put(_parameters, Boolean.valueOf(isDAafter_Variable_value));        return isDAafter_Variable_value;    }    private boolean isDAafter_compute(Variable v) {  return true;  }    protected java.util.Map isDUafter_Variable_values;    // Declared in DefiniteAssignment.jrag at line 709 @SuppressWarnings({"unchecked", "cast"})     public boolean isDUafter(Variable v) {        Object _parameters = v;if(isDUafter_Variable_values == null) isDUafter_Variable_values = new java.util.HashMap(4);        if(isDUafter_Variable_values.containsKey(_parameters))            return ((Boolean)isDUafter_Variable_values.get(_parameters)).booleanValue();        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        boolean isDUafter_Variable_value = isDUafter_compute(v);        if(isFinal && num == boundariesCrossed)            isDUafter_Variable_values.put(_parameters, Boolean.valueOf(isDUafter_Variable_value));        return isDUafter_Variable_value;    }    private boolean isDUafter_compute(Variable v) {  return true;  }    // Declared in LookupType.jrag at line 391 @SuppressWarnings({"unchecked", "cast"})     public boolean declaresType(String name) {        boolean declaresType_String_value = declaresType_compute(name);        return declaresType_String_value;    }    private boolean declaresType_compute(String name) {  return false;  }    // Declared in LookupType.jrag at line 393 @SuppressWarnings({"unchecked", "cast"})     public TypeDecl type(String name) {        TypeDecl type_String_value = type_compute(name);        return type_String_value;    }    private TypeDecl type_compute(String name) {  return null;  }    // Declared in TypeAnalysis.jrag at line 272 @SuppressWarnings({"unchecked", "cast"})     public boolean isVoid() {        boolean isVoid_value = isVoid_compute();        return isVoid_value;    }    private boolean isVoid_compute() {  return false;  }    protected boolean attributes_computed = false;    protected Collection attributes_value;    // Declared in Attributes.jrag at line 182 @SuppressWarnings({"unchecked", "cast"})     public Collection attributes() {        if(attributes_computed)            return attributes_value;        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        attributes_value = attributes_compute();        if(isFinal && num == boundariesCrossed)            attributes_computed = true;        return attributes_value;    }    private Collection attributes_compute() {  return new ArrayList();  }    // Declared in GenerateClassfile.jrag at line 293 @SuppressWarnings({"unchecked", "cast"})     public boolean isBytecodeField() {        boolean isBytecodeField_value = isBytecodeField_compute();        return isBytecodeField_value;    }    private boolean isBytecodeField_compute() {  return false;  }    // Declared in GenerateClassfile.jrag at line 296 @SuppressWarnings({"unchecked", "cast"})     public boolean isBytecodeMethod() {        boolean isBytecodeMethod_value = isBytecodeMethod_compute();        return isBytecodeMethod_value;    }    private boolean isBytecodeMethod_compute() {  return false;  }    // Declared in GenerateClassfile.jrag at line 300 @SuppressWarnings({"unchecked", "cast"})     public boolean generate() {        boolean generate_value = generate_compute();        return generate_value;    }    private boolean generate_compute() {  return true;  }    protected java.util.Map isDAbefore_Variable_values;    // Declared in DefiniteAssignment.jrag at line 244 @SuppressWarnings({"unchecked", "cast"})     public boolean isDAbefore(Variable v) {        Object _parameters = v;if(isDAbefore_Variable_values == null) isDAbefore_Variable_values = new java.util.HashMap(4);        if(isDAbefore_Variable_values.containsKey(_parameters))            return ((Boolean)isDAbefore_Variable_values.get(_parameters)).booleanValue();        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        boolean isDAbefore_Variable_value = getParent().Define_boolean_isDAbefore(this, null, v);        if(isFinal && num == boundariesCrossed)            isDAbefore_Variable_values.put(_parameters, Boolean.valueOf(isDAbefore_Variable_value));        return isDAbefore_Variable_value;    }    protected java.util.Map isDUbefore_Variable_values;    // Declared in DefiniteAssignment.jrag at line 708 @SuppressWarnings({"unchecked", "cast"})     public boolean isDUbefore(Variable v) {        Object _parameters = v;if(isDUbefore_Variable_values == null) isDUbefore_Variable_values = new java.util.HashMap(4);        if(isDUbefore_Variable_values.containsKey(_parameters))            return ((Boolean)isDUbefore_Variable_values.get(_parameters)).booleanValue();        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        boolean isDUbefore_Variable_value = getParent().Define_boolean_isDUbefore(this, null, v);        if(isFinal && num == boundariesCrossed)            isDUbefore_Variable_values.put(_parameters, Boolean.valueOf(isDUbefore_Variable_value));        return isDUbefore_Variable_value;    }    protected boolean typeThrowable_computed = false;    protected TypeDecl typeThrowable_value;    // Declared in ExceptionHandling.jrag at line 22 @SuppressWarnings({"unchecked", "cast"})     public TypeDecl typeThrowable() {        if(typeThrowable_computed)            return typeThrowable_value;        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        typeThrowable_value = getParent().Define_TypeDecl_typeThrowable(this, null);        if(isFinal && num == boundariesCrossed)            typeThrowable_computed = true;        return typeThrowable_value;    }    // Declared in LookupMethod.jrag at line 25 @SuppressWarnings({"unchecked", "cast"})     public Collection lookupMethod(String name) {        Collection lookupMethod_String_value = getParent().Define_Collection_lookupMethod(this, null, name);        return lookupMethod_String_value;    }    // Declared in LookupType.jrag at line 97 @SuppressWarnings({"unchecked", "cast"})     public TypeDecl lookupType(String packageName, String typeName) {        TypeDecl lookupType_String_String_value = getParent().Define_TypeDecl_lookupType(this, null, packageName, typeName);        return lookupType_String_String_value;    }    // Declared in LookupType.jrag at line 173 @SuppressWarnings({"unchecked", "cast"})     public SimpleSet lookupType(String name) {        SimpleSet lookupType_String_value = getParent().Define_SimpleSet_lookupType(this, null, name);        return lookupType_String_value;    }    protected java.util.Map lookupVariable_String_values;    // Declared in LookupVariable.jrag at line 15 @SuppressWarnings({"unchecked", "cast"})     public SimpleSet lookupVariable(String name) {        Object _parameters = name;if(lookupVariable_String_values == null) lookupVariable_String_values = new java.util.HashMap(4);        if(lookupVariable_String_values.containsKey(_parameters))            return (SimpleSet)lookupVariable_String_values.get(_parameters);        int num = boundariesCrossed;        boolean isFinal = this.is$Final();        SimpleSet lookupVariable_String_value = getParent().Define_SimpleSet_lookupVariable(this, null, name);        if(isFinal && num == boundariesCrossed)            lookupVariable_String_values.put(_parameters, lookupVariable_String_value);        return lookupVariable_String_value;    }    // Declared in SyntacticClassification.jrag at line 21 @SuppressWarnings({"unchecked", "cast"})     public NameType nameType() {        NameType nameType_value = getParent().Define_NameType_nameType(this, null);        return nameType_value;    }    // Declared in TypeAnalysis.jrag at line 568 @SuppressWarnings({"unchecked", "cast"})     public String hostPackage() {        String hostPackage_value = getParent().Define_String_hostPackage(this, null);        return hostPackage_value;    }    // Declared in TypeAnalysis.jrag at line 583 @SuppressWarnings({"unchecked", "cast"})     public TypeDecl hostType() {        TypeDecl hostType_value = getParent().Define_TypeDecl_hostType(this, null);        return hostType_value;    }    // Declared in TypeAnalysis.jrag at line 516    public BodyDecl Define_BodyDecl_enclosingBodyDecl(ASTNode caller, ASTNode child) {        if(true) {      int childIndex = this.getIndexOfChild(caller);            return this;        }        return getParent().Define_BodyDecl_enclosingBodyDecl(this, caller);    }public ASTNode rewriteTo() {    return super.rewriteTo();}}

⌨️ 快捷键说明

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