docs: private void checkNonNullPutField(Location location, ValueNumberFrame vnaFrame, UnconditionalValueDerefSet fact)
              throws DataflowAnalysisException {
          INullnessAnnotationDatabase database = AnalysisContext.currentAnalysisContext().getNullnessAnnotationDatabase();
  
          FieldInstruction fieldIns = (FieldInstruction) location.getHandle().getInstruction();
  
          XField field = XFactory.createXField(fieldIns, methodGen.getConstantPool());
          char firstChar = field.getSignature().charAt(0);
          if (firstChar != 'L' && firstChar != '[') {
              return;
          }
          NullnessAnnotation resolvedAnnotation = database.getResolvedAnnotation(field, true);
          if (resolvedAnnotation == NullnessAnnotation.NONNULL) {
              IsNullValueFrame invFrame = invDataflow.getFactAtLocation(location);
              if (!invFrame.isValid()) {
                  return;
              }
              IsNullValue value = invFrame.getTopValue();
              if (reportDereference(value)) {
                  ValueNumber vn = vnaFrame.getTopValue();
                  fact.addDeref(vn, location);
              }
          }
      }