code: public void addAnnotation(AnnotationValue annotationValue) {
          HashMap<ClassDescriptor, AnnotationValue> updatedMap = new HashMap<>(classAnnotations);
          updatedMap.put(annotationValue.getAnnotationClass(), annotationValue);
          classAnnotations = Util.immutableMap(updatedMap);
      }
docs: Destructively add an annotation to the object. In general, this is not a
  great idea, since it could cause the same class to appear to have
  different annotations at different times. However, this method is
  necessary for "built-in" annotations that FindBugs adds to system
  classes. As long as we add such annotations early enough that nobody will
  notice, we should be ok.
  
  @param annotationValue
  an AnnotationValue to add to the class