code: def _is_ignored(
      self,
      path: str,
      is_dir: bool = False,
      ignore_subrepos: bool = True,
  ):
      if self._outside_repo(path):
          return False
      dirname, basename = self.fs.split(self.fs.normpath(path))
      ignore_pattern = self._get_trie_pattern(
          dirname, None, ignore_subrepos
      )
      if ignore_pattern:
          return ignore_pattern.matches(dirname, basename, is_dir)
      return False
  
imports: import os
  import re
  from collections import namedtuple
  from itertools import chain, groupby, takewhile
  from typing import TYPE_CHECKING, List, Optional
  from pathspec.patterns import GitWildMatchPattern
  from pathspec.util import normalize_file
  from pygtrie import Trie
  from dvc.fs import Schemes, localfs
  from dvc.log import logger
  from dvc.pathspec_math import PatternInfo, merge_patterns
label_desc: Use image node_id 11 for calling the DvcIgnoreFilter obj's underlying member method code with example usage: obj._is_ignored(path, is_dir, ignore_subrepos) and returns: False, False, ignore_pattern