
    H>qjx	                         d dl mZ d dlZddlmZ ddlmZ  G d de      Z G d	 d
e      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Zy)    )dequeN   )Op   )NO_VALUEc                   ^    e Zd ZdZddZd ZddZddZddZddZ	dd	Z
dd
ZddZddZy)Array)_count_qNc                 \    t        j                  | |       || _        t               | _        y N)r   __init__r
   r   r   )selfcountsources      Q/opt/rentech/trading_bot/.venv/lib/python3.12/site-packages/eventkit/ops/array.pyr   zArray.__init__   s     
D&!'    c                 \   | j                   j                  t        |      dk(  r|d   n	|r|nt               | j                  r<t        | j                         | j                  kD  r| j                   j                          | j                  t        j                  | j                                y )Nr   r   )	r   appendlenr   r
   popleftemitnpasarray)r   argss     r   	on_sourcezArray.on_source   sk    4yA~DG44X	G;;3tww<$++5GGOO		"**TWW%&r   c                     t        |       S )z 
        Minimum value.
        )ArrayMinr   s    r   minz	Array.min        ~r   c                     t        |       S )z 
        Maximum value.
        )ArrayMaxr   s    r   maxz	Array.max   r!   r   c                     t        |       S )z
        Summation.
        )ArraySumr   s    r   sumz	Array.sum$   r!   r   c                     t        |       S )z
        Product.
        )	ArrayProdr   s    r   prodz
Array.prod*        r   c                     t        |       S )z
        Mean value.
        )	ArrayMeanr   s    r   meanz
Array.mean0   r+   r   c                     t        |       S )z,
        Sample standard deviation.
        )ArrayStdr   s    r   stdz	Array.std6   r!   r   c                     t        |       S )z2
        Test if any array value is true.
        )ArrayAnyr   s    r   anyz	Array.any<   r!   r   c                     t        |       S )z4
        Test if all array values are true.
        )ArrayAllr   s    r   allz	Array.allB   r!   r   r   )returnr   )r8   r#   )r8   r&   )r8   r)   )r8   r-   )r8   r0   )r8   r3   )r8   r6   )__name__
__module____qualname__	__slots__r   r   r    r$   r'   r*   r.   r1   r4   r7    r   r   r	   r	   	   s9     I
'r   r	   c                       e Zd ZdZd Zy)r   r=   c                 B    | j                  |j                                y r   )r   r    r   args     r   r   zArrayMin.on_sourceL       		#'')r   Nr9   r:   r;   r<   r   r=   r   r   r   r   I       Ir   r   c                       e Zd ZdZd Zy)r#   r=   c                 B    | j                  |j                                y r   )r   r$   r@   s     r   r   zArrayMax.on_sourceS   rB   r   NrC   r=   r   r   r#   r#   P   rD   r   r#   c                       e Zd ZdZd Zy)r&   r=   c                 B    | j                  |j                                y r   )r   r'   r@   s     r   r   zArraySum.on_sourceZ   rB   r   NrC   r=   r   r   r&   r&   W   rD   r   r&   c                       e Zd ZdZd Zy)r)   r=   c                 B    | j                  |j                                y r   )r   r*   r@   s     r   r   zArrayProd.on_sourcea       		#((*r   NrC   r=   r   r   r)   r)   ^       Ir   r)   c                       e Zd ZdZd Zy)r-   r=   c                 B    | j                  |j                                y r   )r   r.   r@   s     r   r   zArrayMean.on_sourceh   rK   r   NrC   r=   r   r   r-   r-   e   rL   r   r-   c                       e Zd ZdZd Zy)r0   r=   c                     | j                  t        |      dkD  r|j                  d             y t        j                         y )Nr   )ddof)r   r   r1   r   nanr@   s     r   r   zArrayStd.on_sourceo   s+    		SX\#''q'/>rvv>r   NrC   r=   r   r   r0   r0   l   s    I?r   r0   c                       e Zd ZdZd Zy)r3   r=   c                 B    | j                  |j                                y r   )r   r4   r@   s     r   r   zArrayAny.on_sourcev   rB   r   NrC   r=   r   r   r3   r3   s   rD   r   r3   c                       e Zd ZdZd Zy)r6   r=   c                 B    | j                  |j                                y r   )r   r7   r@   s     r   r   zArrayAll.on_source}   rB   r   NrC   r=   r   r   r6   r6   z   rD   r   r6   )collectionsr   numpyr   opr   utilr   r	   r   r#   r&   r)   r-   r0   r3   r6   r=   r   r   <module>r[      s~       =B =@r r r   ?r ?r r r   