@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (!(reference instanceof CtArrayTypeReference)) { addReference(reference); } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (reference.getDeclaration() == null) { return; } if (reference.getDeclaration() == type) { reference.setSimpleName(cloneTypeName); } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (!(reference instanceof CtArrayTypeReference)) { CtTypeReference typeReference; if (reference.getDeclaringType() == null) { typeReference = reference; } else { typeReference = reference.getAccessType(); } if (!typeReference.equals(reference)) { if (this.isAlreadyInUsedImport(reference)) { super.visitCtTypeReference(reference); return; } } if (!this.isTypeInCollision(typeReference, false)) { this.addClassImport(typeReference); } } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (reference.getDeclaration() == null) { return; } if (reference.getDeclaration().getTopLevelType() != clone) { throw new SpoonException("post condition broken " + reference); } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { assertNotNull(reference); if (CtTypeReference.NULL_TYPE_NAME.equals(reference.getSimpleName()) || "?".equals(reference.getSimpleName())) { super.visitCtTypeReference(reference); return; } final CtType<T> typeDeclaration = reference.getTypeDeclaration(); assertNotNull(reference.toString() + " cannot be found in ", typeDeclaration); assertEquals(reference.getSimpleName(), typeDeclaration.getSimpleName()); assertEquals(reference.getQualifiedName(), typeDeclaration.getQualifiedName()); if (reference.getDeclaration() == null) { assertTrue("typeDeclaration must be shadow", typeDeclaration.isShadow()); } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (!(reference instanceof CtArrayTypeReference)) { addReference(reference); } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> reference) { if (!(reference instanceof CtArrayTypeReference)) { if (reference.getDeclaringType() == null) { addImport(reference); } else { addImport(reference.getDeclaringType()); } } super.visitCtTypeReference(reference); }
@Override public <T> void visitCtTypeReference(CtTypeReference<T> ref) { CtType<?> ctType = ref.getDeclaration(); if (ctType instanceof CtClass) { CompilationNode node = cxt.getNodeByAnyStagedClass((CtClass) ctType); if (node != null) { CtClass<?> mergedClass = node.getMergedClass(); CtPackage mergedPackage = mergedClass.getPackage(); if (mergedPackage != null) ref.setPackage(mergedPackage.getReference()); CtType<?> declaringType = mergedClass.getDeclaringType(); if (declaringType != null) { CtTypeReference<?> declaringTypeRef = declaringType.getReference(); declaringTypeRef.setActualTypeArguments( (List) declaringType.getFormalTypeParameters()); ref.setDeclaringType(declaringTypeRef); } ref.setSimpleName(mergedClass.getSimpleName()); if (node.eraseTypeParameters) { ref.setActualTypeArguments(emptyList()); } else if (!ref.getActualTypeArguments().isEmpty()){ ref.setActualTypeArguments((List) mergedClass.getFormalTypeParameters()); } return; } } super.visitCtTypeReference(ref); } });