docs: def _quic_path(
      X,
      path,
      X_test=None,
      lam=0.5,
      tol=1e-6,
      max_iter=1000,
      Theta0=None,
      Sigma0=None,
      method="quic",
      verbose=0,
      score_metric="log_likelihood",
      init_method="corrcoef",
  ):
      """Wrapper to compute path for example X.
      """
      S, lam_scale_ = _init_coefs(X, method=init_method)
  
      path = path.copy(order="C")
  
      if method == "quic":
          (precisions_, covariances_, opt_, cputime_, iters_, duality_gap_) = quic(
              S,
              lam,
              mode="path",
              tol=tol,
              max_iter=max_iter,
              Theta0=Theta0,
              Sigma0=Sigma0,
              path=path,
              msg=verbose,
          )
      else:
          raise NotImplementedError("Only method='quic' has been implemented.")
  
      if X_test is not None:
          S_test, lam_scale_test = _init_coefs(X_test, method=init_method)
  
          path_errors = []
          for lidx, lam in enumerate(path):
              path_errors.append(
                  _compute_error(
                      S_test,
                      covariances_[lidx],
                      precisions_[lidx],
                      score_metric=score_metric,
                  )
              )
          scores_ = [-e for e in path_errors]
  
          return covariances_, precisions_, scores_
  
      return covariances_, precisions_