
    
_d.                    |    d dl mZ d dlZd dlZd dlmZmZ d dlmZ ej                  dk\  rd dl
mZ  G d de      Zy)	    )annotationsN)ABCabstractmethod)Path)      )Literalc                     e Zd ZdZ	 	 	 	 	 	 d	 	 	 	 	 	 	 	 	 	 	 ddZddZeedd              Zeedd              Z	eedd              Z
eedd              Zeedd	              Zeedd
              Zeedd              Zeedd              Zeedd              Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zedd       Zy)PlatformDirsABCz7
    Abstract base class for platform directories.
    Nc                `    || _         || _        	 || _        	 || _        	 || _        	 || _        y)a%  
        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`.
        N)appname	appauthorversionroaming	multipathopinion)selfr   r   r   r   r   r   s          H/usr/lib/python3/dist-packages/pkg_resources/_vendor/platformdirs/api.py__init__zPlatformDirsABC.__init__   sJ    & "	 	 	
 #	     c                    t        |dd        }| j                  rB|j                  | j                         | j                  r|j                  | j                         t	        j
                  j                  |d   g| S )N   r   )listr   appendr   ospathjoin)r   baseparamss      r   _append_app_name_and_versionz,PlatformDirsABC._append_app_name_and_version<   s[    d12h<<MM$,,'||dll+ww||DG-f--r   c                     y)z(:return: data directory tied to the userN r   s    r   user_data_dirzPlatformDirsABC.user_data_dirD       r   c                     y)z':return: data directory shared by usersNr"   r#   s    r   site_data_dirzPlatformDirsABC.site_data_dirI   r%   r   c                     y)z*:return: config directory tied to the userNr"   r#   s    r   user_config_dirzPlatformDirsABC.user_config_dirN   r%   r   c                     y)z-:return: config directory shared by the usersNr"   r#   s    r   site_config_dirzPlatformDirsABC.site_config_dirS   r%   r   c                     y)z):return: cache directory tied to the userNr"   r#   s    r   user_cache_dirzPlatformDirsABC.user_cache_dirX   r%   r   c                     y)z):return: state directory tied to the userNr"   r#   s    r   user_state_dirzPlatformDirsABC.user_state_dir]   r%   r   c                     y)z':return: log directory tied to the userNr"   r#   s    r   user_log_dirzPlatformDirsABC.user_log_dirb   r%   r   c                     y)z-:return: documents directory tied to the userNr"   r#   s    r   user_documents_dirz"PlatformDirsABC.user_documents_dirg   r%   r   c                     y)z+:return: runtime directory tied to the userNr"   r#   s    r   user_runtime_dirz PlatformDirsABC.user_runtime_dirl   r%   r   c                ,    t        | j                        S )z#:return: data path tied to the user)r   r$   r#   s    r   user_data_pathzPlatformDirsABC.user_data_pathq        D&&''r   c                ,    t        | j                        S )z":return: data path shared by users)r   r'   r#   s    r   site_data_pathzPlatformDirsABC.site_data_pathv   r8   r   c                ,    t        | j                        S )z%:return: config path tied to the user)r   r)   r#   s    r   user_config_pathz PlatformDirsABC.user_config_path{        D(())r   c                ,    t        | j                        S )z(:return: config path shared by the users)r   r+   r#   s    r   site_config_pathz PlatformDirsABC.site_config_path   r=   r   c                ,    t        | j                        S )z$:return: cache path tied to the user)r   r-   r#   s    r   user_cache_pathzPlatformDirsABC.user_cache_path        D''((r   c                ,    t        | j                        S )z$:return: state path tied to the user)r   r/   r#   s    r   user_state_pathzPlatformDirsABC.user_state_path   rB   r   c                ,    t        | j                        S )z":return: log path tied to the user)r   r1   r#   s    r   user_log_pathzPlatformDirsABC.user_log_path   s     D%%&&r   c                ,    t        | j                        S )z(:return: documents path tied to the user)r   r3   r#   s    r   user_documents_pathz#PlatformDirsABC.user_documents_path   s     D++,,r   c                ,    t        | j                        S )z&:return: runtime path tied to the user)r   r5   r#   s    r   user_runtime_pathz!PlatformDirsABC.user_runtime_path   s     D))**r   )NNNFFT)r   
str | Noner   zstr | None | Literal[False]r   rK   r   boolr   rL   r   rL   )r   strreturnrM   )rN   rM   )rN   r   )__name__
__module____qualname____doc__r   r    propertyr   r$   r'   r)   r+   r-   r/   r1   r3   r5   r7   r:   r<   r?   rA   rD   rF   rH   rJ   r"   r   r   r   r      s    #15")) /) 	)
 ) ) )V. 7  7 6  6 9  9 <  < 8  8 8  8 6  6 <  < :  : ( ( ( ( * * * * ) ) ) ) ' ' - - + +r   r   )
__future__r   r   sysabcr   r   pathlibr   version_infotypingr	   r   r"   r   r   <module>rZ      s3    " 	 
 # vP+c P+r   