docstr: Checks for subrepo in directories and updates them.
code: def _update(self, dir_keys, starting_repo):
      """Checks for subrepo in directories and updates them."""
      repo = starting_repo
      for key in dir_keys:
          d = self._from_key(key)
          if self._is_dvc_repo(d):
              repo = self.repo_factory(
                  d,
                  fs=self.repo.fs,
                  scm=self.repo.scm,
                  repo_factory=self.repo_factory,
              )
              self._repo_stack.enter_context(repo)
              self._datafss[key] = DataFileSystem(
                  index=repo.index.data["repo"]
              )
          self._subrepos_trie[key] = repo
  
imports: import errno
  import functools
  import ntpath
  import os
  import posixpath
  import threading
  from collections import deque
  from contextlib import ExitStack, suppress
  from typing import TYPE_CHECKING, Any, Callable, Dict, Optional, Tuple, Type, Union
  from fsspec.spec import AbstractFileSystem
  from funcy import wrap_with
  from dvc.log import logger
  from dvc_objects.fs.base import FileSystem
  from .data import DataFileSystem
label_desc: Use image node_id 20 for calling the _DVCFileSystem obj's underlying member method code with example usage: obj._update(dir_keys, starting_repo) without return types