+
    Bi                        ^ RI t ^ RIt^ RIHtHt ^ RIHt ^ RIHt  ! R R]4      t]]]]]	]R3,          3,          t
] ! R R	]4      4       tR
 R lt] P                  ! 4       3R R llt]P                  R R l4       t]P"                  R R l4       t]P"                  R R l4       t]P"                  R R l4       tR# )    N)DictUnion)runtime_checkable)Protocolc                       ] tR t^tRtRtR# )Symlinkz.
A string indicating the target of a symlink.
 N)__name__
__module____qualname____firstlineno____doc____static_attributes__r	       :/usr/lib/python3.14/test/test_importlib/resources/_path.pyr   r      s    r   r   	FilesSpecc                   >   a  ] tR t^t o R tR tR tR tR tRt	V t
R# )	TreeMakerc                    R # Nr	   )selfargskwargss   &*,r   __truediv__TreeMaker.__truediv__   s    Cr   c                    R # r   r	   )r   r   s   &,r   mkdirTreeMaker.mkdir   s    sr   c                    R # r   r	   )r   contentr   s   &&,r   
write_textTreeMaker.write_text   s    Sr   c                    R # r   r	   )r   r    s   &&r   write_bytesTreeMaker.write_bytes   s    Cr   c                    R # r   r	   )r   targets   &&r   
symlink_toTreeMaker.symlink_to    s    #r   r	   N)r
   r   r   r   r   r   r!   r$   r(   r   __classdictcell__)__classdict__s   @r   r   r      s     /"0'%%r   r   c                R    V ^8  d   QhR\         \        \        3,          R\        /# )   objreturn)r   strr   )formats   "r   __annotate__r2   #   s'     D DE#y.1 Di Dr   c                 ^    \        V \        4      '       d   V # \        P                  ! V 4      # r   )
isinstancer   pathlibPath)r.   s   &r   _ensure_tree_makerr7   #   s"    S),,3C',,s2CCr   c                R    V ^8  d   QhR\         R\        \        \        3,          /# )r-   specprefix)r   r   r0   r   )r1   s   "r   r2   r2   '   s%     < <
<#y.!<r   c                p    V P                  4        F!  w  r#\        V\        V4      V,          4       K#  	  R# )a  
Build a set of files/directories, as described by the spec.

Each key represents a pathname, and the value represents
the content. Content may be a nested directory.

>>> spec = {
...     'README.txt': "A README file",
...     "foo": {
...         "__init__.py": "",
...         "bar": {
...             "__init__.py": "",
...         },
...         "baz.py": "# Some code",
...         "bar.py": Symlink("baz.py"),
...     },
...     "bing": Symlink("foo"),
... }
>>> target = getfixture('tmp_path')
>>> build(spec, target)
>>> target.joinpath('foo/baz.py').read_text(encoding='utf-8')
'# Some code'
>>> target.joinpath('bing/bar.py').read_text(encoding='utf-8')
'# Some code'
N)itemscreater7   )r9   r:   namecontentss   &&  r   buildr@   '   s+    : **,x+F3d:; 'r   c                P    V ^8  d   QhR\         \        \        \        3,          /# r-   r    )r   r0   bytesr   )r1   s   "r   r2   r2   I   s        E#ui/0  r   c                 B    VP                  R R7       \        WR7       R# )T)exist_ok)r:   N)r   r@   r    paths   &&r   r=   r=   H   s    JJJ	'r   c                $    V ^8  d   QhR\         /# rB   )rC   )r1   s   "r   r2   r2   O   s      u r   c                 (    VP                  V 4       R # r   )r$   rF   s   &&r   _rJ   N   s    Wr   c                $    V ^8  d   QhR\         /# rB   )r0   )r1   s   "r   r2   r2   T   s     / /s /r   c                 ,    VP                  V R R7       R# )zutf-8)encodingN)r!   rF   s   &&r   rJ   rJ   S   s    OOGgO.r   c                $    V ^8  d   QhR\         /# rB   )r   )r1   s   "r   r2   r2   Y   s      w r   c                 (    VP                  V 4       R # r   )r(   rF   s   &&r   rJ   rJ   X   s    OOGr   )r5   	functoolstypingr   r   r   r   r0   r   rC   r   r   r7   r6   r@   singledispatchr=   registerrJ   r	   r   r   <module>rT      s       $ c  eC<==>	 	& 	& 	&D %,LLN<B    
   / /  r   