class_docstr: Represents a path which behaves like a string.
class_docstr_tok: ["Represents","a","path","which","behaves","like","a","string","."]
docstr: Recursively copy a directory to the given `destination`. If the given
  `destination` does not exist it will be created.
  
  :param symlinks:
      If ``True`` symbolic links in the source tree result in symbolic
      links in the destination tree otherwise the contents of the files
      pointed to by the symbolic links are copied.
docstr_tok: ["Recursively","copy","a","directory","to","the","given","`","destination","`",".","If","the","given","`","destination","`","does","not","exist","it","will","be","created",".",":","param","symlinks",":","If","``","True","``","symbolic","links","in","the","source","tree","result","in","symbolic","links","in","the","destination","tree","otherwise","the","contents","of","the","files","pointed","to","by","the","symbolic","links","are","copied","."]
code: def copytree(self, destination: str, symlinks: bool = False) -> None:
      """
      Recursively copy a directory to the given `destination`. If the given
      `destination` does not exist it will be created.
  
      :param symlinks:
          If ``True`` symbolic links in the source tree result in symbolic
          links in the destination tree otherwise the contents of the files
          pointed to by the symbolic links are copied.
      """
      shutil.copytree(self, destination, symlinks=symlinks)
      if os.environ.get("SPHINX_READONLY_TESTDIR"):
          # If source tree is marked read-only (e.g. because it is on a read-only
          # filesystem), `shutil.copytree` will mark the destination as read-only
          # as well.  To avoid failures when adding additional files/directories
          # to the destination tree, ensure destination directories are not marked
          # read-only.
          for root, _dirs, files in os.walk(destination):
              os.chmod(root, 0o755 & ~UMASK)
              for name in files:
                  os.chmod(os.path.join(root, name), 0o644 & ~UMASK)
  
imports: from __future__ import annotations
  import os
  import shutil
  import sys
  import warnings
  from typing import IO, TYPE_CHECKING, Any, Callable
  from sphinx.deprecation import RemovedInSphinx90Warning
label_desc: Use image node_id 10 for calling the path obj's underlying member method code with example usage: obj.copytree(destination, symlinks) without return types