+
     Bi                     v    ^ RI Ht ^ RIHt ^RIHt  ! R R4      t ! R R4      tRR lt ! R	 R
4      t	R t
R# )    )suppress)TextIOWrapper)abcc                   8   a  ] tR t^t o RtR 3R ltR tRtV tR# )SpecLoaderAdapterz6
Adapt a package spec to adapt the underlying loader.
c                    V P                   # N)loaderspecs   &4/usr/lib/python3.14/importlib/resources/_adapters.py<lambda>SpecLoaderAdapter.<lambda>   s    $++    c                ,    Wn         V! V4      V n        R # r	   )r   r
   )selfr   adapters   &&&r   __init__SpecLoaderAdapter.__init__   s    	dmr   c                .    \        V P                  V4      # r	   )getattrr   r   names   &&r   __getattr__SpecLoaderAdapter.__getattr__   s    tyy$''r   )r
   r   N)	__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s      &> $( (r   r   c                   0   a  ] tR t^t o RtR tR tRtV tR# )TraversableResourcesLoaderz1
Adapt a loader to provide TraversableResources.
c                    Wn         R # r	   r   r   r   s   &&r   r   #TraversableResourcesLoader.__init__       	r   c                H    \        V P                  4      P                  4       # r	   )CompatibilityFilesr   _nativer   s   &&r   get_resource_reader.TraversableResourcesLoader.get_resource_reader   s    !$)),4466r   r   N)	r   r   r   r   r    r   r.   r!   r"   r#   s   @r   r&   r&      s     7 7r   r&   c                 ^    VR 8X  d   \        V .VO5/ VB # VR8X  d   V # \        RV R24      h)rrbzInvalid mode value 'z"', only 'r' and 'rb' are supported)r   
ValueError)filemodeargskwargss   &&*,r   _io_wrapperr8       s@    s{T3D3F33	
+D61ST
UUr   c                      a  ] tR t^(t o Rt ! R R]P                  4      t ! R R]P                  4      t ! R R]P                  4      t	R t
]R	 4       tR
 tR tR tRtV tR# )r,   z^
Adapter for an existing or non-existent resource reader
to provide a compatibility .files().
c                   Z   a  ] tR t^.t o RtR tR tR t]tR t	]
R 4       tR
R ltRtV tR	# )CompatibilityFiles.SpecPathzS
Path tied to a module spec.
Can be read and exposes the resource reader children.
c                    Wn         W n        R # r	   )_spec_reader)r   r   readers   &&&r   r   $CompatibilityFiles.SpecPath.__init__4   s    J!Lr   c                   a  S P                   '       g   \        R4      # \        V 3R  lS P                   P                  4        4       4      # )c              3   d   <"   T F%  p\         P                  SP                  V4      x  K'  	  R # 5ir	   )r,   	ChildPathr>   ).0pathr   s   & r   	<genexpr>6CompatibilityFiles.SpecPath.iterdir.<locals>.<genexpr>;   s,      3D #,,T\\4@@3s   -0 )r>   itercontentsr   s   fr   iterdir#CompatibilityFiles.SpecPath.iterdir8   s<    <<<Bx  LL113  r   c                    R # FrH   rK   s   &r   is_file#CompatibilityFiles.SpecPath.is_file@       r   c                    V P                   '       g   \        P                  V4      # \        P                  V P                   V4      # r	   )r>   r,   
OrphanPathrC   r   others   &&r   joinpath$CompatibilityFiles.SpecPath.joinpathE   s3    <<<)44U;;%//eDDr   c                .    V P                   P                  # r	   )r=   r   rK   s   &r   r    CompatibilityFiles.SpecPath.nameJ   s    ::??"r   c                T    \        V P                  P                  R 4      V.VO5/ VB # r	   )r8   r>   open_resourcer   r5   r6   r7   s   &&*,r   open CompatibilityFiles.SpecPath.openN   s)    t||99$?WWPVWWr   )r>   r=   Nr1   r   r   r   r   r    r   rL   rP   is_dirrW   propertyr   r^   r!   r"   r#   s   @r   SpecPathr;   .   sF     	
	"		 	E
 
	# 
	#	X 	Xr   rd   c                   \   a  ] tR t^Qt o RtR tR tR tR tR t	]
R 4       tRR ltR	tV tR
# )CompatibilityFiles.ChildPathz_
Path tied to a resource reader child.
Can be read but doesn't expose any meaningful children.
c                    Wn         W n        R # r	   )r>   _name)r   r?   r   s   &&&r   r   %CompatibilityFiles.ChildPath.__init__W   s    !LJr   c                    \        R4      # NrH   rI   rK   s   &r   rL   $CompatibilityFiles.ChildPath.iterdir[       8Or   c                L    V P                   P                  V P                  4      # r	   )r>   is_resourcer   rK   s   &r   rP   $CompatibilityFiles.ChildPath.is_file^   s    <<++DII66r   c                ,    V P                  4       '       * # r	   )rP   rK   s   &r   rb   #CompatibilityFiles.ChildPath.is_dira   s    ||~%%r   c                B    \         P                  V P                  V4      # r	   )r,   rT   r   rU   s   &&r   rW   %CompatibilityFiles.ChildPath.joinpathd   s    %00EBBr   c                    V P                   # r	   )rh   rK   s   &r   r   !CompatibilityFiles.ChildPath.nameg   s    ::r   c                h    \        V P                  P                  V P                  4      V.VO5/ VB # r	   )r8   r>   r\   r   r]   s   &&*,r   r^   !CompatibilityFiles.ChildPath.openk   s7    **4995t>BFL r   )rh   r>   Nr`   ra   r#   s   @r   rC   rf   Q   sB     	
			7	&	C 
	 
		 	r   rC   c                   Z   a  ] tR t^pt o RtR tR tR t]tR t	]
R 4       tR
R ltRtV tR	# )CompatibilityFiles.OrphanPathzv
Orphan path, not tied to a module spec or resource reader.
Can't be read and doesn't expose any meaningful children.
c                H    \        V4      ^8  d   \        R4      hWn        R# )   z/Need at least one path part to construct a pathN)lenr3   _path)r   
path_partss   &*r   r   &CompatibilityFiles.OrphanPath.__init__v   s    :" !RSS#Jr   c                    \        R4      # rk   rl   rK   s   &r   rL   %CompatibilityFiles.OrphanPath.iterdir{   rn   r   c                    R # rO   rH   rK   s   &r   rP   %CompatibilityFiles.OrphanPath.is_file~   rR   r   c                H    \         P                  ! . V P                  OVN5!  # r	   )r,   rT   r   rU   s   &&r   rW   &CompatibilityFiles.OrphanPath.joinpath   s    %00D$**DeDDr   c                (    V P                   R,          # )r}   r   rK   s   &r   r   "CompatibilityFiles.OrphanPath.name   s    ::b>!r   c                    \        R 4      h)zCan't open orphan path)FileNotFoundErrorr]   s   &&*,r   r^   "CompatibilityFiles.OrphanPath.open   s    #$<==r   r   Nr`   ra   r#   s   @r   rT   r{   p   sD     	
	$
		 	E 
	" 
	"	> 	>r   rT   c                    Wn         R # r	   r   r(   s   &&r   r   CompatibilityFiles.__init__   r*   r   c                    \        \        4      ;_uu_ 4        V P                  P                  P	                  V P                  P
                  4      uuR R R 4       #   + '       g   i     R # ; ir	   )r   AttributeErrorr   r
   r.   r   rK   s   &r   r>   CompatibilityFiles._reader   s<    n%%99##77		G &%%%s   9AA-	c                F    V P                   p\        VR4      '       d   V# T # )z2
Return the native reader if it supports files().
files)r>   hasattr)r   r?   s   & r   r-   CompatibilityFiles._native   s$      11v;t;r   c                .    \        V P                  V4      # r	   )r   r>   )r   attrs   &&r   r   CompatibilityFiles.__getattr__   s    t||T**r   c                V    \         P                  V P                  V P                  4      # r	   )r,   rd   r   r>   rK   s   &r   r   CompatibilityFiles.files   s    !**499dllCCr   r   N)r   r   r   r   r    r   Traversablerd   rC   rT   r   rc   r>   r-   r   r   r!   r"   r#   s   @r   r,   r,   (   sn     
!X3?? !XFCOO >>S__ >: H H<+D Dr   r,   c                6    \        V P                  \        4      # )zT
Construct a package spec with traversable compatibility
on the spec/loader/reader.
)r   __spec__r&   )packages   &r   	wrap_specr      s    
 W--/IJJr   Nr`   )
contextlibr   ior    r   r   r&   r8   r,   r   rH   r   r   <module>r      s=      
( 
(	7 	7VxD xDvKr   