docs: def _build_weight_from_kernel(self, kernel):
          """Private method to build an adjacency matrix from
          a kernel matrix
  
          Just puts zeroes down the diagonal in-place, since the
          kernel matrix is ultimately not stored.
  
          Parameters
          ----------
          kernel : array-like, shape=[n_samples, n_samples]
              Kernel matrix.
  
          Returns
          -------
          Adjacency matrix, shape=[n_samples, n_samples]
          """
  
          weight = kernel.copy()
          self._diagonal = weight.diagonal().copy()
          weight = utils.set_diagonal(weight, 0)
          return weight