o ÏEc:ã@sfddlZddlZddlmZmZddlmZddlmZm Z ej dkr)ddlm Z Gdd„deƒZ dS) éN)ÚABCÚabstractmethod)ÚPath)ÚOptionalÚUnion)éé)ÚLiteralc @sÌeZdZdZ      d6deedeeddfdeed ed ed ef d d „Zdedefdd„Z e e defdd„ƒƒZ e e defdd„ƒƒZ e e defdd„ƒƒZe e defdd„ƒƒZe e defdd„ƒƒZe e defdd„ƒƒZe e defdd„ƒƒZe e defd d!„ƒƒZe e defd"d#„ƒƒZe defd$d%„ƒZe defd&d'„ƒZe defd(d)„ƒZe defd*d+„ƒZe defd,d-„ƒZe defd.d/„ƒZe defd0d1„ƒZe defd2d3„ƒZe defd4d5„ƒZdS)7ÚPlatformDirsABCz7 Abstract base class for platform directories. NFTÚappnameÚ appauthorzLiteral[False]ÚversionÚroamingÚ multipathÚopinioncCs0||_||_ ||_ ||_ ||_ ||_dS)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)r r r rrr)Úselfr r r rrr©rúO/opt/alt/python310/lib/python3.10/site-packages/pip/_vendor/platformdirs/api.pyÚ__init__s zPlatformDirsABC.__init__ÚbaseÚreturncGsLt|dd…ƒ}|jr| |j¡|jr| |j¡tjj|dg|¢RŽS)Nér)Úlistr Úappendr ÚosÚpathÚjoin)rrÚparamsrrrÚ_append_app_name_and_version;s   z,PlatformDirsABC._append_app_name_and_versioncCódS)z(:return: data directory tied to the userNr©rrrrÚ user_data_dirCózPlatformDirsABC.user_data_dircCr)z':return: data directory shared by usersNrr rrrÚ site_data_dirHr"zPlatformDirsABC.site_data_dircCr)z*:return: config directory tied to the userNrr rrrÚuser_config_dirMr"zPlatformDirsABC.user_config_dircCr)z-:return: config directory shared by the usersNrr rrrÚsite_config_dirRr"zPlatformDirsABC.site_config_dircCr)z):return: cache directory tied to the userNrr rrrÚuser_cache_dirWr"zPlatformDirsABC.user_cache_dircCr)z):return: state directory tied to the userNrr rrrÚuser_state_dir\r"zPlatformDirsABC.user_state_dircCr)z':return: log directory tied to the userNrr rrrÚ user_log_dirar"zPlatformDirsABC.user_log_dircCr)z-:return: documents directory tied to the userNrr rrrÚuser_documents_dirfr"z"PlatformDirsABC.user_documents_dircCr)z+:return: runtime directory tied to the userNrr rrrÚuser_runtime_dirkr"z PlatformDirsABC.user_runtime_dircCó t|jƒS)z#:return: data path tied to the user)rr!r rrrÚuser_data_pathpó zPlatformDirsABC.user_data_pathcCr+)z":return: data path shared by users)rr#r rrrÚsite_data_pathur-zPlatformDirsABC.site_data_pathcCr+)z%:return: config path tied to the user)rr$r rrrÚuser_config_pathzr-z PlatformDirsABC.user_config_pathcCr+)z(:return: config path shared by the users)rr%r rrrÚsite_config_pathr-z PlatformDirsABC.site_config_pathcCr+)z$:return: cache path tied to the user)rr&r rrrÚuser_cache_path„r-zPlatformDirsABC.user_cache_pathcCr+)z$:return: state path tied to the user)rr'r rrrÚuser_state_path‰r-zPlatformDirsABC.user_state_pathcCr+)z":return: log path tied to the user)rr(r rrrÚ user_log_pathŽr-zPlatformDirsABC.user_log_pathcCr+)z(:return: documents path tied to the user)rr)r rrrÚuser_documents_path“r-z#PlatformDirsABC.user_documents_pathcCr+)z&:return: runtime path tied to the user)rr*r rrrÚuser_runtime_path˜r-z!PlatformDirsABC.user_runtime_path)NNNFFT)Ú__name__Ú __module__Ú __qualname__Ú__doc__rÚstrrÚboolrrÚpropertyrr!r#r$r%r&r'r(r)r*rr,r.r/r0r1r2r3r4r5rrrrr s†ùþ ýüûú ù+r ) rÚsysÚabcrrÚpathlibrÚtypingrrÚ version_infor r rrrrÚs