classdecl.java
来自「JDK1.4编译器后端」· Java 代码 · 共 1,239 行 · 第 1/3 页
JAVA
1,239 行
setChild(new List(), 3);
} // Declared in java.ast at line 13
// Declared in java.ast line 63 public ClassDecl(Modifiers p0, String p1, Opt<Access> p2, List<Access> p3, List<BodyDecl> p4) { setChild(p0, 0); setID(p1); setChild(p2, 1); setChild(p3, 2); setChild(p4, 3); } // Declared in java.ast at line 22 // Declared in java.ast line 63 public ClassDecl(Modifiers p0, beaver.Symbol p1, Opt<Access> p2, List<Access> p3, List<BodyDecl> p4) { setChild(p0, 0); setID(p1); setChild(p2, 1); setChild(p3, 2); setChild(p4, 3); } // Declared in java.ast at line 30 protected int numChildren() {
return 4;
} // Declared in java.ast at line 33
public boolean mayHaveRewrite() { return false; } // Declared in java.ast at line 2 // Declared in java.ast line 63 public void setModifiers(Modifiers node) { setChild(node, 0); } // Declared in java.ast at line 5 public Modifiers getModifiers() { return (Modifiers)getChild(0); } // Declared in java.ast at line 9 public Modifiers getModifiersNoTransform() { return (Modifiers)getChildNoTransform(0); } // Declared in java.ast at line 2 // Declared in java.ast line 63 public void setSuperClassAccessOpt(Opt<Access> opt) { setChild(opt, 1); } // Declared in java.ast at line 6 public boolean hasSuperClassAccess() { return getSuperClassAccessOpt().getNumChild() != 0; } // Declared in java.ast at line 10 @SuppressWarnings({"unchecked", "cast"}) public Access getSuperClassAccess() { return (Access)getSuperClassAccessOpt().getChild(0); } // Declared in java.ast at line 14 public void setSuperClassAccess(Access node) { getSuperClassAccessOpt().setChild(node, 0); } // Declared in java.ast at line 17 @SuppressWarnings({"unchecked", "cast"}) public Opt<Access> getSuperClassAccessOpt() { return (Opt<Access>)getChild(1); } // Declared in java.ast at line 21 @SuppressWarnings({"unchecked", "cast"}) public Opt<Access> getSuperClassAccessOptNoTransform() { return (Opt<Access>)getChildNoTransform(1); } // Declared in java.ast at line 2 // Declared in java.ast line 63 public void setImplementsList(List<Access> list) { setChild(list, 2); } // Declared in java.ast at line 6 private int getNumImplements = 0; // Declared in java.ast at line 7 public int getNumImplements() { return getImplementsList().getNumChild(); } // Declared in java.ast at line 11 @SuppressWarnings({"unchecked", "cast"}) public Access getImplements(int i) { return (Access)getImplementsList().getChild(i); } // Declared in java.ast at line 15 public void addImplements(Access node) { List<Access> list = getImplementsList(); list.addChild(node); } // Declared in java.ast at line 20 public void setImplements(Access node, int i) { List<Access> list = getImplementsList(); list.setChild(node, i); } // Declared in java.ast at line 24 public List<Access> getImplementss() { return getImplementsList(); } // Declared in java.ast at line 27 public List<Access> getImplementssNoTransform() { return getImplementsListNoTransform(); } // Declared in java.ast at line 31 @SuppressWarnings({"unchecked", "cast"}) public List<Access> getImplementsList() { return (List<Access>)getChild(2); } // Declared in java.ast at line 35 @SuppressWarnings({"unchecked", "cast"}) public List<Access> getImplementsListNoTransform() { return (List<Access>)getChildNoTransform(2); } // Declared in java.ast at line 2 // Declared in java.ast line 63 public void setBodyDeclList(List<BodyDecl> list) { setChild(list, 3); } // Declared in java.ast at line 6 private int getNumBodyDecl = 0; // Declared in java.ast at line 7 public int getNumBodyDecl() { return getBodyDeclList().getNumChild(); } // Declared in java.ast at line 11 @SuppressWarnings({"unchecked", "cast"}) public BodyDecl getBodyDecl(int i) { return (BodyDecl)getBodyDeclList().getChild(i); } // Declared in java.ast at line 15 public void addBodyDecl(BodyDecl node) { List<BodyDecl> list = getBodyDeclList(); list.addChild(node); } // Declared in java.ast at line 20 public void setBodyDecl(BodyDecl node, int i) { List<BodyDecl> list = getBodyDeclList(); list.setChild(node, i); } // Declared in java.ast at line 24 public List<BodyDecl> getBodyDecls() { return getBodyDeclList(); } // Declared in java.ast at line 27 public List<BodyDecl> getBodyDeclsNoTransform() { return getBodyDeclListNoTransform(); } // Declared in java.ast at line 31 @SuppressWarnings({"unchecked", "cast"}) public List<BodyDecl> getBodyDeclList() { return (List<BodyDecl>)getChild(3); } // Declared in java.ast at line 35 @SuppressWarnings({"unchecked", "cast"}) public List<BodyDecl> getBodyDeclListNoTransform() { return (List<BodyDecl>)getChildNoTransform(3); } // Declared in ConstantExpression.jrag at line 302 @SuppressWarnings({"unchecked", "cast"}) public Constant cast(Constant c) { Constant cast_Constant_value = cast_compute(c); return cast_Constant_value; } private Constant cast_compute(Constant c) { return Constant.create(c.stringValue()); } // Declared in ConstantExpression.jrag at line 364 @SuppressWarnings({"unchecked", "cast"}) public Constant add(Constant c1, Constant c2) { Constant add_Constant_Constant_value = add_compute(c1, c2); return add_Constant_Constant_value; } private Constant add_compute(Constant c1, Constant c2) { return Constant.create(c1.stringValue() + c2.stringValue()); } // Declared in ConstantExpression.jrag at line 429 @SuppressWarnings({"unchecked", "cast"}) public Constant questionColon(Constant cond, Constant c1, Constant c2) { Constant questionColon_Constant_Constant_Constant_value = questionColon_compute(cond, c1, c2); return questionColon_Constant_Constant_Constant_value; } private Constant questionColon_compute(Constant cond, Constant c1, Constant c2) { return Constant.create(cond.booleanValue() ? c1.stringValue() : c2.stringValue()); } // Declared in ConstantExpression.jrag at line 533 @SuppressWarnings({"unchecked", "cast"}) public boolean eqIsTrue(Expr left, Expr right) { boolean eqIsTrue_Expr_Expr_value = eqIsTrue_compute(left, right); return eqIsTrue_Expr_Expr_value; } private boolean eqIsTrue_compute(Expr left, Expr right) { return isString() && left.constant().stringValue().equals(right.constant().stringValue()); } // Declared in ErrorCheck.jrag at line 30 @SuppressWarnings({"unchecked", "cast"}) public int lineNumber() { int lineNumber_value = lineNumber_compute(); return lineNumber_value; } private int lineNumber_compute() { return getLine(IDstart); } // Declared in LookupConstructor.jrag at line 22 @SuppressWarnings({"unchecked", "cast"}) public Collection lookupSuperConstructor() { Collection lookupSuperConstructor_value = lookupSuperConstructor_compute(); return lookupSuperConstructor_value; } private Collection lookupSuperConstructor_compute() { return hasSuperclass() ? superclass().constructors() : Collections.EMPTY_LIST; } protected boolean noConstructor_computed = false; protected boolean noConstructor_value; // Declared in LookupConstructor.jrag at line 177 @SuppressWarnings({"unchecked", "cast"}) public boolean noConstructor() { if(noConstructor_computed) return noConstructor_value; int num = boundariesCrossed; boolean isFinal = this.is$Final(); noConstructor_value = noConstructor_compute(); if(isFinal && num == boundariesCrossed) noConstructor_computed = true; return noConstructor_value; } private boolean noConstructor_compute() { for(int i = 0; i < getNumBodyDecl(); i++) if(getBodyDecl(i) instanceof ConstructorDecl) return false; return true; } // Declared in LookupMethod.jrag at line 263 @SuppressWarnings({"unchecked", "cast"}) public SimpleSet interfacesMethodsSignature(String signature) { SimpleSet interfacesMethodsSignature_String_value = interfacesMethodsSignature_compute(signature); return interfacesMethodsSignature_String_value; } private SimpleSet interfacesMethodsSignature_compute(String signature) { SimpleSet set = (SimpleSet)interfacesMethodsSignatureMap().get(signature); if(set != null) return set; return SimpleSet.emptySet; } protected boolean interfacesMethodsSignatureMap_computed = false; protected HashMap interfacesMethodsSignatureMap_value; // Declared in LookupMethod.jrag at line 269 @SuppressWarnings({"unchecked", "cast"}) public HashMap interfacesMethodsSignatureMap() { if(interfacesMethodsSignatureMap_computed) return interfacesMethodsSignatureMap_value; int num = boundariesCrossed; boolean isFinal = this.is$Final(); interfacesMethodsSignatureMap_value = interfacesMethodsSignatureMap_compute(); if(isFinal && num == boundariesCrossed) interfacesMethodsSignatureMap_computed = true; return interfacesMethodsSignatureMap_value; } private HashMap interfacesMethodsSignatureMap_compute() { HashMap map = new HashMap(); for(Iterator iter = interfacesIterator(); iter.hasNext(); ) { TypeDecl typeDecl = (InterfaceDecl)iter.next(); for(Iterator i2 = typeDecl.methodsIterator(); i2.hasNext(); ) { MethodDecl m = (MethodDecl)i2.next(); putSimpleSetElement(map, m.signature(), m); } } return map; } // Declared in LookupMethod.jrag at line 305 @SuppressWarnings({"unchecked", "cast"}) public HashMap methodsSignatureMap() { if(methodsSignatureMap_computed) return methodsSignatureMap_value; int num = boundariesCrossed; boolean isFinal = this.is$Final(); methodsSignatureMap_value = methodsSignatureMap_compute(); if(isFinal && num == boundariesCrossed) methodsSignatureMap_computed = true; return methodsSignatureMap_value; } private HashMap methodsSignatureMap_compute() { HashMap map = new HashMap(localMethodsSignatureMap()); if(hasSuperclass()) { for(Iterator iter = superclass().methodsIterator(); iter.hasNext(); ) { MethodDecl m = (MethodDecl)iter.next(); if(!m.isPrivate() && m.accessibleFrom(this) && !localMethodsSignatureMap().containsKey(m.signature())) putSimpleSetElement(map, m.signature(), m); } } for(Iterator outerIter = interfacesIterator(); outerIter.hasNext(); ) { TypeDecl typeDecl = (TypeDecl)outerIter.next(); for(Iterator iter = typeDecl.methodsIterator(); iter.hasNext(); ) { MethodDecl m = (MethodDecl)iter.next(); if(!m.isPrivate() && m.accessibleFrom(this) && !localMethodsSignatureMap().containsKey(m.signature())) if(allMethodsAbstract((SimpleSet)map.get(m.signature()))) putSimpleSetElement(map, m.signature(), m); } } return map; } // Declared in LookupMethod.jrag at line 363 @SuppressWarnings({"unchecked", "cast"}) public SimpleSet ancestorMethods(String signature) { Object _parameters = signature;if(ancestorMethods_String_values == null) ancestorMethods_String_values = new java.util.HashMap(4); if(ancestorMethods_String_values.containsKey(_parameters)) return (SimpleSet)ancestorMethods_String_values.get(_parameters); int num = boundariesCrossed; boolean isFinal = this.is$Final(); SimpleSet ancestorMethods_String_value = ancestorMethods_compute(signature); if(isFinal && num == boundariesCrossed) ancestorMethods_String_values.put(_parameters, ancestorMethods_String_value); return ancestorMethods_String_value; } private SimpleSet ancestorMethods_compute(String signature) { SimpleSet set = SimpleSet.emptySet; if(hasSuperclass()) { for(Iterator iter = superclass().localMethodsSignature(signature).iterator(); iter.hasNext(); ) { MethodDecl m = (MethodDecl)iter.next(); if(!m.isPrivate()) set = set.add(m); } } if(set.size() != 1 || ((MethodDecl)set.iterator().next()).isAbstract()) { for(Iterator iter = interfacesMethodsSignature(signature).iterator(); iter.hasNext(); ) { MethodDecl m = (MethodDecl)iter.next(); set = set.add(m); } } if(!hasSuperclass()) return set; if(set.size() == 1) { MethodDecl m = (MethodDecl)set.iterator().next(); if(!m.isAbstract()) { boolean done = true; for(Iterator iter = superclass().ancestorMethods(signature).iterator(); iter.hasNext(); ) { MethodDecl n = (MethodDecl)iter.next(); if(n.isPrivate() || !n.accessibleFrom(m.hostType())) done = false; } if(done) return set; } } for(Iterator iter = superclass().ancestorMethods(signature).iterator(); iter.hasNext(); ) {
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?