AnnotationVisitor (int typeRef, TypePath typePath, String anno, boolean visible) { AnnotationVisitor base = super.visitTypeAnnotation(typeRef, typePath, anno, visible); if (typePath != null) return base; TypeReference ref = new TypeReference(typeRef); if (methodCanHaveNullability && ref.getSort() == TypeReference.METHOD_RETURN) { if (notNullAnnotations.contains(anno)) { return collectNotNullArgs(base, methodInfo.nullability.withNotNull(anno, ISE_CLASS_NAME)); } else if (seemsNullable(anno)) { methodInfo.nullability.hasTypeUseNullable = true; } } else if (ref.getSort() == TypeReference.METHOD_FORMAL_PARAMETER) { return checkParameterNullability(ref.getFormalParameterIndex() + methodInfo.paramAnnotationOffset, anno, base, true); } return base; }