
    Mi(                        S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S SK
Jr  \	(       a  S SKJr  S SKJr   " S	 S
5      r " S S\\5      r " S S\\5      r " S S\\5      r/ SQrg)    )annotations)ABC)OrderedDict)Path)TYPE_CHECKING)IS_WIN)Any)
PythonInfoc                  <   \ rS rSrSr\(       a  SOSrSS jr\SS j5       r	\SS j5       r
\SS j5       r\SS	 j5       r\SS
 j5       r\SS j5       r\SS j5       r\SS j5       rSS jr\SS j5       r\SS j5       r\SS j5       r\SS j5       rSS jrSrg)Describe   z`Given a host interpreter tell us information about what the created interpreter might look like.z.exe c                T    X l         Xl        S U l        S U l        S U l        S U l        g N)interpreterdest_stdlib_stdlib_platform_system_stdlib
_conf_vars)selfr   r   s      t/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/virtualenv/create/describe.py__init__Describe.__init__   s+    &	 $"    c                    U R                   $ r   )
script_dirr   s    r   bin_dirDescribe.bin_dir   s    r   c                R    U R                   U R                  R                  S5      -  $ )Nscriptsr   r   install_pathr   s    r   r   Describe.script_dir!   "    yy4++88CCCr   c                R    U R                   U R                  R                  S5      -  $ )Npurelibr#   r   s    r   r(   Describe.purelib%   r&   r   c                R    U R                   U R                  R                  S5      -  $ )Nplatlibr#   r   s    r   r+   Describe.platlib)   r&   r   c                z    [        [        U R                  S 4U R                  S 445      R	                  5       5      $ r   )listr   r+   r(   keysr   s    r   libsDescribe.libs-   s2    K$,,!5d7K LMRRTUUr   c                    U R                   c2  [        U R                  R                  SU R                  S95      U l         U R                   $ )Nstdlib
config_var)r   r   r   sysconfig_path_config_varsr   s    r   r3   Describe.stdlib1   s?    << 0 0 ? ?UYUfUf ? ghDL||r   c                    U R                   c2  [        U R                  R                  SU R                  S95      U l         U R                   $ )N
platstdlibr4   )r   r   r   r6   r7   r   s    r   stdlib_platformDescribe.stdlib_platform7   sD      ($()9)9)H)Hbfbsbs)H)t$uD!$$$r   c                t    U R                   c   U R                  U R                  5      U l         U R                   $ r   )r   _calc_config_varsr   r   s    r   r7   Describe._config_vars=   s,    ??""44TYY?DOr   c           	        U R                   R                  nUR                  5        VVs0 s HI  u  p4U[        U[        5      (       a,  UR                  U R                   R                  5      (       a  UOU_MK     snn$ s  snnf r   )r   sysconfig_varsitems
isinstancestr
startswithprefix)r   tosys_varskvs        r   r>   Describe._calc_config_varsC   sp    ##22gogugugw
gw_c_`AjC((Q\\$:J:J:Q:Q-R-RXYYgw
 	
 
s   AA>c                    g)z.Knows means it knows how the output will look.T )clsr   s     r   can_describeDescribe.can_describeI   s     r   c                4    U R                   R                  S   $ )N)r   partsr   s    r   env_nameDescribe.env_nameN   s    yyr""r   c                X    U R                   U R                  5        U R                   3-  $ r   )r   exe_stemsuffixr   s    r   exeDescribe.exeR   s%    || 1$++???r   c                    [         e)zcExecutable name without suffix - there seems to be no standard way to get this without creating it.)NotImplementedError)rN   s    r   rW   Describe.exe_stemV   s
     "!r   c                <    U R                   U U R                   3-  $ r   )r   rX   )r   names     r   scriptDescribe.script[   s    D6$++!777r   )r   r   r   r   r   r   N)r   r   r   r
   returnNone)rb   r   )rb   z
list[Path])rb   dict[str, Any])rG   r   rb   rd   r   r
   rb   bool)rb   rD   )r_   rD   rb   r   )__name__
__module____qualname____firstlineno____doc__r   rX   r   propertyr   r   r(   r+   r0   r3   r;   r7   r>   classmethodrO   rT   rY   rW   r`   __static_attributes__rM   r   r   r   r      s   jV2F   D D D D D D V V  
 % %
  

   # # @ @ " "8r   r   c                      \ rS rSrSrg)Python3Supports_   rM   N)rg   rh   ri   rj   rn   rM   r   r   rp   rp   _   s    r   rp   c                  6   ^  \ rS rSr\SU 4S jj5       rSrU =r$ )PosixSupportsc   c                N   > UR                   S:H  =(       a    [        TU ]	  U5      $ )NposixossuperrO   rN   r   	__class__s     r   rO   PosixSupports.can_described   s!    ~~(NUW-A+-NNr   rM   re   rg   rh   ri   rj   rm   rO   rn   __classcell__r{   s   @r   rs   rs   c   s    O Or   rs   c                  6   ^  \ rS rSr\SU 4S jj5       rSrU =r$ )WindowsSupportsi   c                N   > UR                   S:H  =(       a    [        TU ]	  U5      $ )Nntrw   rz   s     r   rO   WindowsSupports.can_describej   s!    ~~%K%'*>{*KKr   rM   re   r}   r   s   @r   r   r   i   s    L Lr   r   )r   rs   rp   r   N)
__future__r   abcr   collectionsr   pathlibr   typingr   virtualenv.infor   r	   python_discoveryr
   r   rp   rs   r   __all__rM   r   r   <module>r      sb    "  #    "+L8 L8^	h 	OHc OLh Lr   