if (cf.outerClass != null) {
cv.visitOuterClass(cf.outerClass, cf.outerMethod, cf.outerMethodDesc);
}
// visits attributes and annotations
int i, n;
AnnotationNode an;
n = cf.visibleAnnotations == null ? 0 : cf.visibleAnnotations.size();
for (i = 0; i < n; ++i) {
an = (AnnotationNode) cf.visibleAnnotations.get(i);
an.accept(cv.visitAnnotation(an.desc, true));
}
n = cf.invisibleAnnotations == null ? 0
: cf.invisibleAnnotations.size();
for (i = 0; i < n; ++i) {
an = (AnnotationNode) cf.invisibleAnnotations.get(i);
an.accept(cv.visitAnnotation(an.desc, false));
}
n = cf.attrs == null ? 0 : cf.attrs.size();
for (i = 0; i < n; ++i) {
cv.visitAttribute((Attribute) cf.attrs.get(i));