@Override public <A extends Annotation> void visitCtAnnotationType( CtAnnotationType<A> annotationType) { addImport(annotationType.getReference()); super.visitCtAnnotationType(annotationType); }
@Override public <T extends Enum<?>> void visitCtEnum(CtEnum<T> ctEnum) { addImport(ctEnum.getReference()); super.visitCtEnum(ctEnum); }
@Override public <T> void visitCtCatchVariable(CtCatchVariable<T> catchVariable) { for (CtTypeReference<?> type : catchVariable.getMultiTypes()) { addImport(type); } super.visitCtCatchVariable(catchVariable); }
@Override public Collection<CtTypeReference<?>> computeImports(CtType<?> simpleType) { imports.clear(); addImport(simpleType.getReference()); scan(simpleType); return getImports(simpleType); }
@Override public <T> void visitCtExecutableReference( CtExecutableReference<T> reference) { enterReference(reference); if (reference.getDeclaringType() != null && reference.getDeclaringType().getDeclaringType() == null) { addImport(reference.getDeclaringType()); } scanReferences(reference.getActualTypeArguments()); exitReference(reference); }