Sindbad~EG File Manager
�
4Μg$# � �n � d Z ddlmZ ddlZddlmZmZ ddlmZ ddl m
Z
e
rddl mZmZ G d� d e� Z
y)
z Base API.� )�annotationsN)�ABC�abstractmethod)�Path)�
TYPE_CHECKING)�Iterator�Literalc �v � e Zd ZdZ d. d/d�Zd0d�Zd1d�Zeed2d�� � Z eed2d�� � Z
eed2d�� � Zeed2d �� � Zeed2d
�� � Z
eed2d�� � Zeed2d�� � Zeed2d
�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zeed2d�� � Zed3d�� Zed3d�� Zed3d�� Zed3d�� Zed3d�� Zed3d�� Zed3d�� Zed3d�� Z ed3d�� Z!ed3d�� Z"ed3d �� Z#ed3d!�� Z$ed3d"�� Z%ed3d#�� Z&ed3d$�� Z'ed3d%�� Z(d4d&�Z)d4d'�Z*d4d(�Z+d4d)�Z,d5d*�Z-d5d+�Z.d5d,�Z/d5d-�Z0y)6�PlatformDirsABCz-Abstract base class for platform directories.Nc �n � || _ || _ || _ || _ || _ || _ || _ y)aY
Create a new platform directory.
:param appname: See `appname`.
:param appauthor: See `appauthor`.
:param version: See `version`.
:param roaming: See `roaming`.
:param multipath: See `multipath`.
:param opinion: See `opinion`.
:param ensure_exists: See `ensure_exists`.
N)�appname� appauthor�version�roaming� multipath�opinion�
ensure_exists)�selfr
r r r r r r s �G/usr/local/lib/python3.12/site-packages/pip/_vendor/platformdirs/api.py�__init__zPlatformDirsABC.__init__ sW � �, ���"��� � ��� � ��� � #��� � ���*��� � c �& � t |dd � }| j rB|j | j � | j r|j | j � t j
j |d g|��� }| j |� |S )N� r )�listr
�appendr �os�path�join�_optionally_create_directory)r �base�paramsr s r �_append_app_name_and_versionz,PlatformDirsABC._append_app_name_and_versionP sm � ��d�1�2�h����<�<��M�M�$�,�,�'��|�|��
�
�d�l�l�+��w�w�|�|�D��G�-�f�-���)�)�$�/��r c �V � | j rt |� j dd�� y y )NT)�parents�exist_ok)r r �mkdir�r r s r r z,PlatformDirsABC._optionally_create_directoryZ s'