
    >ie$                    Z   U d dl mZ d dlmZmZmZ d dlmZ d dlZd dl	Z	d dl
Z	d dlmZmZmZ d dlmZ d dlmZmZ d dlmZmZmZmZmZmZmZ 	 d d	lmZ n# e$ r eZY nw xY w ej        d
          Z  ej        d          Z! ej        d          Z" ej        d          Z#d/dZ$d0dZ%d0dZ& G d de          Z' G d de          Z( G d de          Z)d1d!Z* ee*          Z+d"e,d#<   d2d(Z-ej.        /                    d&eeg          d)             Z0d3d*Z1d4d+Z2d4d,Z3d3d-Z4d3d.Z5dS )5    )annotations)HashableMappingSequence)AnyN)DaskMethodsMixindont_optimizetokenize)globalmethod)Delayeddelayed)DaskCollectionGraphHLGDaskCollectionKey
NestedKeysPostComputeCallablePostPersistCallable)DisplayObjectz
dask.arrayzdask.bagzdask.datasetszdask.dataframexSequence[Any]returnr   c                    | d         S )Nr    r   s    6lib/python3.11/site-packages/dask/tests/test_typing.pyfinalizer   #   s    Q4K    dskr   keysSequence[Key] | Keykwargsc                2    t          j        j        | |fi |S N)daskthreadedgetr   r    r"   s      r   get1r)   '   s    =S$11&111r   c                (    t          j        | |fi |S r$   )r%   r'   r(   s      r   get2r+   +   s    8C(((((r   c                      e Zd Zd!dZd"dZd#d	Zd$dZd%dZd&dZ e	e
j        j                  Z eede          Zd'dZd(dZ	 	 	 d)d*d ZdS )+
Inheritingbased_onr   r   Nonec                    || _         d S r$   r.   selfr.   s     r   __init__zInheriting.__init__0        r   r   c                4    | j                                         S r$   r.   __dask_graph__r3   s    r   r8   zInheriting.__dask_graph__3       }++---r   r   c                4    | j                                         S r$   r.   __dask_keys__r9   s    r   r=   zInheriting.__dask_keys__6       }**,,,r   !tuple[PostComputeCallable, tuple]c                    t           dfS Nr   r   r9   s    r   __dask_postcompute__zInheriting.__dask_postcompute__9       |r   !tuple[PostPersistCallable, tuple]c                4    | j                                         S r$   r.   __dask_postpersist__r9   s    r   rH   zInheriting.__dask_postpersist__<       }11333r   r   c                *    t          | j                  S r$   r
   r.   r9   s    r   __dask_tokenize__zInheriting.__dask_tokenize__?       &&&r   hlgcollection_optimkeyfalseyr   c                &    t          j        | fi |S r$   )r%   computer3   r"   s     r   rS   zInheriting.computeJ   s    |D++F+++r   c                @    t           | j        j        di |          S rA   )r-   r.   persistrT   s     r   rV   zInheriting.persistM   s&    /$-/99&99:::r   mydaskNFfilenamestrformat
str | Noneoptimize_graphboolr"   DisplayObject | Nonec                .    t          j        | f|||d|S )N)rX   rZ   r\   )r%   	visualize)r3   rX   rZ   r\   r"   s        r   r`   zInheriting.visualizeP   s8     ~
)	
 

 
 
 	
r   r.   r   r   r/   r   r   r   r   r   r?   r   rE   r   r   )r   r   )r   r-   )rW   NF)
rX   rY   rZ   r[   r\   r]   r"   r   r   r^   )__name__
__module____qualname__r4   r8   r=   rC   rH   rL   staticmethodr%   r&   r'   __dask_scheduler__r   r	   __dask_optimize__rS   rV   r`   r   r   r   r-   r-   /   s       ! ! ! !. . . .- - - -   4 4 4 4' ' ' ' &dm&788$!  , , , ,; ; ; ;
 !!$	
 
 
 
 
 
 
r   r-   c                  x    e Zd ZddZddZdd	ZddZddZddZddZ	 e
e          Z eede          ZdS )HLGCollectionr.   r   r   r/   c                    || _         d S r$   r1   r2   s     r   r4   zHLGCollection.__init__a   r5   r   r   c                4    | j                                         S r$   r7   r9   s    r   r8   zHLGCollection.__dask_graph__d   r:   r   Sequence[str]c                4    | j                                         S r$   )r.   __dask_layers__r9   s    r   rs   zHLGCollection.__dask_layers__g   s    },,...r   r   c                4    | j                                         S r$   r<   r9   s    r   r=   zHLGCollection.__dask_keys__j   r>   r   r?   c                    t           dfS rA   rB   r9   s    r   rC   z"HLGCollection.__dask_postcompute__m   rD   r   rE   c                4    | j                                         S r$   rG   r9   s    r   rH   z"HLGCollection.__dask_postpersist__p   rI   r   r   c                *    t          | j                  S r$   rK   r9   s    r   rL   zHLGCollection.__dask_tokenize__s   rM   r   rN   rO   N)r.   r   r   r/   rb   )r   rq   rc   rd   re   rf   )rg   rh   ri   r4   r8   rs   r=   rC   rH   rL   rj   r)   rk   r   r	   rl   r   r   r   rn   rn   `   s        ! ! ! !. . . ./ / / /- - - -   4 4 4 4' ' ' ' &d++$!  r   rn   c                  p    e Zd ZddZddZdd	ZddZddZddZ e	e
          Z eede          ZdS )NotHLGCollectionr.   r   r   r/   c                    || _         d S r$   r1   r2   s     r   r4   zNotHLGCollection.__init__   r5   r   r   c                4    | j                                         S r$   r7   r9   s    r   r8   zNotHLGCollection.__dask_graph__   r:   r   r   c                4    | j                                         S r$   r<   r9   s    r   r=   zNotHLGCollection.__dask_keys__   r>   r   r?   c                    t           dfS rA   rB   r9   s    r   rC   z%NotHLGCollection.__dask_postcompute__   rD   r   rE   c                4    | j                                         S r$   rG   r9   s    r   rH   z%NotHLGCollection.__dask_postpersist__   rI   r   r   c                *    t          | j                  S r$   rK   r9   s    r   rL   z"NotHLGCollection.__dask_tokenize__   rM   r   collection_optimrO   Nra   rb   rc   rd   re   rf   )rg   rh   ri   r4   r8   r=   rC   rH   rL   rj   r+   rk   r   r	   rl   r   r   r   ry   ry      s        ! ! ! !. . . .- - - -   4 4 4 4' ' ' ' &d++$  r   ry   intc                    | dz   S )N   r   r   s    r   
increment_r      s    q5Lr   r   	incrementcollr   protocolr/   c                *    t          | |          sJ d S r$   )
isinstance)r   r   s     r   assert_isinstancer      s    dH%%%%%%%r   c                F   t                               d          }t                              g dd          }t                                          }t          d          }t          ||            t          ||            t          ||            t          ||            d S )N
   )r               r   )npartitions)daonesdbfrom_sequencedds
timeseriesr   r   )r   arrbagdfdobjs        r   test_isinstance_corer      s    
''"++C


???

:
:C			BQ<<Dc8$$$c8$$$b(###dH%%%%%r   c                 .   t                               d          } t          |           }t          |           }t	          |t
                    sJ t	          |t
                    sJ t	          |t
                    sJ t	          |t                    rJ d S )Nr   )r   r   rn   ry   r   r   r   )ahlgcnhlgcs      r   test_isinstance_customr      s    
ADQEdN+++++e^,,,,,e^,,,,,%!23333333r   c                *    |                                  S r$   rS   r   s    r   rS   rS          <<>>r   c                *    |                                  S r$   r   r   s    r   compute2r      r   r   c                    ddl m}  t          d          }t          |          }t	          |          dk    sJ t          |          dk    sJ t          d          }t	          |          dk    sJ t          |          dk    sJ t                              d          }t	          |          j        dk    sJ t          |          j        dk    sJ d S )Nr   )Arrayr   r   r   r   )r   )	
dask.arrayr   r   rn   rS   r   r   r   shape)r   r   r   darrays        r   test_parameter_passingr      s          1AD4==AD>>Q1A1::????A;;!772;;E5>>5((((E?? E))))))r   c                 l    t          t          d                    } t          | t                     sJ d S )Nr   )r-   r   r   )
inheritings    r   test_inheriting_classr      s1    '	!55Jj*-------r   )r   r   r   r   )r   r   r    r!   r"   r   r   r   )r   r   r   r   )r   r   r   r   r   r/   )r   r/   )r   r   r   r   )6
__future__r   collections.abcr   r   r   typingr   pytestr%   dask.threaded	dask.baser   r	   r
   dask.contextr   dask.delayedr   r   dask.typingr   r   r   r   r   r   r   IPython.displayr   ImportErrorimportorskipr   r   r   ddr   r)   r+   r-   rn   ry   r   r   __annotations__r   markparametrizer   r   rS   r   r   r   r   r   r   <module>r      s8   " " " " " " " 7 7 7 7 7 7 7 7 7 7             ? ? ? ? ? ? ? ? ? ? % % % % % % ) ) ) ) ) ) ) )                 -------   MMM V&&V$$f/**V)**   2 2 2 2) ) ) ).
 .
 .
 .
 .
 .
 .
 .
b    $   >    '   8    WZ((	 ( ( ( (& & & & n6G%HII	& 	& JI	&	4 	4 	4 	4      * * * *". . . . . .s   A A A 