class_docstr: On Unix/Linux, we follow the
  `XDG Basedir Spec <https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_. The spec allows
  overriding directories with environment variables. The examples show are the default values, alongside the name of
  the environment variable that overrides them. Makes use of the
  `appname <platformdirs.api.PlatformDirsABC.appname>`,
  `version <platformdirs.api.PlatformDirsABC.version>`,
  `multipath <platformdirs.api.PlatformDirsABC.multipath>`,
  `opinion <platformdirs.api.PlatformDirsABC.opinion>`.
docstr: :return: documents directory tied to the user, e.g. ``~/Documents``
docstr_tok: [":","return",":","documents","directory","tied","to","the","user",",","e.g",".","``","~\/Documents","``"]
code: def user_documents_dir(self) -> str:
      """
      :return: documents directory tied to the user, e.g. ``~/Documents``
      """
      documents_dir = _get_user_dirs_folder("XDG_DOCUMENTS_DIR")
      if documents_dir is None:
          documents_dir = os.environ.get(
              "XDG_DOCUMENTS_DIR", ""
          ).strip()
          if not documents_dir:
              documents_dir = os.path.expanduser("~/Documents")
  
      return documents_dir
  
imports: from __future__ import annotations
  import os
  import sys
  from configparser import ConfigParser
  from pathlib import Path
  from .api import PlatformDirsABC
label_desc: Use image node_id 9 for calling the Unix obj's underlying member method code with example usage: obj.user_documents_dir() and returns: documents_dir