FieldVisitor (int access, String name, String desc, String signature, Object value) { return new FieldVisitor(Opcodes.API_VERSION) { private final List<String> annotations = new SmartList<>(); @Override public AnnotationVisitor visitAnnotation(String descriptor, boolean visible) { return StubBuildingVisitor.getAnnotationTextCollector(descriptor, annotations::add); } @Override public void visitEnd() { processField(access, name, desc, signature, annotations); } }; }