docs: public Description createErrorDescription(
        ErrorMessage errorMessage,
        @Nullable Tree suggestTree,
        Description.Builder descriptionBuilder) {
      Description.Builder builder = descriptionBuilder.setMessage(errorMessage.message);
      if (config.suggestSuppressions() && suggestTree != null) {
        switch (errorMessage.messageType) {
          case DEREFERENCE_NULLABLE:
          case RETURN_NULLABLE:
          case PASS_NULLABLE:
          case ASSIGN_FIELD_NULLABLE:
          case SWITCH_EXPRESSION_NULLABLE:
            if (config.getCastToNonNullMethod() != null) {
              builder = addCastToNonNullFix(suggestTree, builder);
            } else {
              builder = addSuppressWarningsFix(suggestTree, builder, suppressionName);
            }
            break;
          case CAST_TO_NONNULL_ARG_NONNULL:
            builder = removeCastToNonNullFix(suggestTree, builder);
            break;
          case WRONG_OVERRIDE_RETURN:
            builder = addSuppressWarningsFix(suggestTree, builder, suppressionName);
            break;
          case WRONG_OVERRIDE_PARAM:
            builder = addSuppressWarningsFix(suggestTree, builder, suppressionName);
            break;
          case METHOD_NO_INIT:
          case FIELD_NO_INIT:
            builder = addSuppressWarningsFix(suggestTree, builder, INITIALIZATION_CHECK_NAME);
            break;
          case ANNOTATION_VALUE_INVALID:
            break;
          default:
            builder = addSuppressWarningsFix(suggestTree, builder, suppressionName);
        }
      }
      // #letbuildersbuild
      return builder.build();
    }