+
    &j^	                     P    ^ RI Ht  ! R R4      t ! R R4      t ! R R]4      tR# )	    )dequec                   F   a  ] tR t^t o RtR tR tR tR tR	R lt	Rt
V tR# )
TransactionzFilesystem transaction write context

Gathers files for deferred commit or discard, so that several write
operations can be finalized semi-atomically. This works by having this
instance as the ``.transaction`` attribute of the given filesystem
c                0    Wn         \        4       V n        R# )/
Parameters
----------
fs: FileSystem instance
N)fsr   files)selfr   kwargss   &&,j/Users/jameslopez/projects/CWCArchive/cwc-podcast/.venv/lib/python3.14/site-packages/fsspec/transaction.py__init__Transaction.__init__   s     W
    c                &    V P                  4        V # N)startr
   s   &r   	__enter__Transaction.__enter__   s    

r   c                    V P                  VRJ R7       V P                  '       d,   RV P                  n        RV P                  n        RV n        R# R# )z;End transaction and commit, if exit is not due to exceptionN)commitF)completer   _intrans_transaction)r
   exc_typeexc_valexc_tbs   &&&&r   __exit__Transaction.__exit__   sD     	X-.777$DGG#'DGG DG r   c                F    \        4       V n        RV P                  n        R# )z&Start a transaction on this FileSystemTN)r   r	   r   r   r   s   &r   r   Transaction.start"   s    W
r   c                   V P                   '       dG   V P                   P                  4       pV'       d   VP                  4        KF  VP                  4        KX  RV P                  n        RV P                  n        RV n        R# z8Finish transaction: commit or discard all deferred filesFN)r	   popleftr   discardr   r   r   )r
   r   fs   && r   r   Transaction.complete'   sQ    jjj

""$A
		 #r   r	   r   NT)__name__
__module____qualname____firstlineno____doc__r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s(      

 
r   r   c                   8   a  ] tR t^4t o R tR tR tR tRtV t	R# )	FileActorc                    . V n         R # r   r	   r   s   &r   r   FileActor.__init__5   s	    
r   c                    V P                    F  pVP                  4        K  	  V P                   P                  4        R # r   )r	   r   clearr
   r&   s   & r   r   FileActor.commit8   s)    AHHJ 

r   c                    V P                    F  pVP                  4        K  	  V P                   P                  4        R # r   )r	   r%   r9   r:   s   & r   r%   FileActor.discard=   s)    AIIK 

r   c                <    V P                   P                  V4       R # r   )r	   appendr:   s   &&r   r?   FileActor.appendB   s    

!r   r6   N)
r*   r+   r,   r-   r   r   r%   r?   r/   r0   r1   s   @r   r4   r4   4   s     

 r   r4   c                   <   a a ] tR t^Ft oV 3R ltRR ltRtVtV ;t# )DaskTransactionc                   < ^ RI p\        SV `	  V4       VP                  4       pVP	                  \
        RR7      P                  4       V n        R# )r   NT)actor)distributedsuperr   default_clientsubmitr4   resultr	   )r
   r   rE   client	__class__s   &&  r   r   DaskTransaction.__init__G   s@     	++-]]9D]9@@B
r   c                    V'       d*   V P                   P                  4       P                  4        M(V P                   P                  4       P                  4        RV P                  n        RV n        R# r#   )r	   r   rI   r%   r   r   )r
   r   s   &&r   r   DaskTransaction.completeS   sJ    JJ&&(JJ '') r   r(   r)   )	r*   r+   r,   r-   r   r   r/   r0   __classcell__)rK   r2   s   @@r   rB   rB   F   s     
C r   rB   N)collectionsr   r   r4   rB    r   r   <module>rR      s)    - -` $k r   