class_docstr: Handles metadata supplied in configuration files.
class_docstr_tok: ["Handles","metadata","supplied","in","configuration","files","."]
docstr: Represents value as a string, allowing including text
  from nearest files using `file:` directive.
  
  Directive is sandboxed and won't reach anything outside
  directory with setup.py.
  
  Examples:
      file: README.rst, CHANGELOG.md, src/file.txt
  
  :param str value:
  :rtype: str
docstr_tok: ["Represents","value","as","a","string",",","allowing","including","text","from","nearest","files","using","`","file",":","`","directive",".","Directive","is","sandboxed","and","wo","n't","reach","anything","outside","directory","with","setup.py",".","Examples",":","file",":","README.rst",",","CHANGELOG.md",",","src\/file.txt",":","param","str","value",":",":","rtype",":","str"]
code: def _parse_file(self, value, root_dir: _Path):
      """Represents value as a string, allowing including text
      from nearest files using `file:` directive.
  
      Directive is sandboxed and won't reach anything outside
      directory with setup.py.
  
      Examples:
          file: README.rst, CHANGELOG.md, src/file.txt
  
      :param str value:
      :rtype: str
      """
      include_directive = "file:"
  
      if not isinstance(value, str):
          return value
  
      if not value.startswith(include_directive):
          return value
  
      spec = value[len(include_directive) :]
      filepaths = [path.strip() for path in spec.split(",")]
      self._referenced_files.update(filepaths)
      return expand.read_files(filepaths, root_dir)
  
imports: import contextlib
  import functools
  import os
  from collections import defaultdict
  from functools import partial
  from functools import wraps
  from typing import TYPE_CHECKING, Callable, Any, Dict, Generic, Iterable, List, Optional, Set, Tuple, TypeVar, Union
  from ..errors import FileError, OptionError
  from ..extern.packaging.markers import default_environment
  from ..extern.packaging.requirements import InvalidRequirement, Requirement
  from ..extern.packaging.specifiers import SpecifierSet
  from ..extern.packaging.version import InvalidVersion, Version
  from ..warnings import SetuptoolsDeprecationWarning
  from .None import expand
label_desc: Use image node_id 9 for calling the ConfigHandler obj's underlying member method code with example usage: obj._parse_file(value, root_dir) and returns: expand, value, value