/** @apilevel low-level */
 @SuppressWarnings({"unchecked", "cast"})
 public InterfaceDecl fullCopy() {
   InterfaceDecl res = (InterfaceDecl) copy();
   for (int i = 0; i < getNumChildNoTransform(); i++) {
     ASTNode node = getChildNoTransform(i);
     if (node != null) node = node.fullCopy();
     res.setChild(node, i);
   }
   return res;
 }
 /** @apilevel internal */
 @SuppressWarnings({"unchecked", "cast"})
 public InterfaceDecl copy() {
   try {
     InterfaceDecl node = (InterfaceDecl) 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;
 }
 /** @apilevel internal */
 private boolean isSupertypeOfInterfaceDecl_compute(InterfaceDecl type) {
   if (super.isSupertypeOfInterfaceDecl(type)) return true;
   for (Iterator iter = type.superinterfacesIterator(); iter.hasNext(); ) {
     TypeDecl superinterface = (TypeDecl) iter.next();
     if (superinterface.instanceOf(this)) return true;
   }
   return false;
 }
示例#4
0
 private boolean supertypeInterfaceDecl_compute(InterfaceDecl type) {
   return type.subtype(genericDecl().original());
 }
 /** @apilevel internal */
 @SuppressWarnings({"unchecked", "cast"})
 public InterfaceDecl clone() throws CloneNotSupportedException {
   InterfaceDecl node = (InterfaceDecl) super.clone();
   node.methodsSignatureMap_computed = false;
   node.methodsSignatureMap_value = null;
   node.ancestorMethods_String_values = null;
   node.memberTypes_String_values = null;
   node.memberFieldsMap_computed = false;
   node.memberFieldsMap_value = null;
   node.memberFields_String_values = null;
   node.isStatic_computed = false;
   node.castingConversionTo_TypeDecl_values = null;
   node.instanceOf_TypeDecl_values = null;
   node.isCircular_visited = -1;
   node.isCircular_computed = false;
   node.isCircular_initialized = false;
   node.typeDescriptor_computed = false;
   node.typeDescriptor_value = null;
   node.in$Circle(false);
   node.is$Final(false);
   return node;
 }