
    }
i              	          d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZmZ d dlmZ dZ G d	 d
ee         eeeef                   ZdS )    )annotations)Sequence)AnyGeneric)Self)MISSING)BaseChannelValue)EmptyChannelError)AnyValuec                       e Zd ZU dZdZded<   dd fdZd dZed!d            Z	ed!d            Z
d"dZd#dZd$dZd%dZd&dZd%dZ xZS )'r   zeStores the last value received, assumes that if multiple values are
    received, they are all equal.)typvaluezValue | Anyr    r   r   keystrreturnNonec                d    t                                          ||           t          | _        d S N)super__init__r   r   )selfr   r   	__class__s      C:\Users\Dell Inspiron 16\Desktop\tws\AgrotaPowerBi\back-agrota-powerbi\mcp-client-agrota\venv\Lib\site-packages\langgraph/channels/any_value.pyr   zAnyValue.__init__   s(    c"""


    objectboolc                ,    t          |t                    S r   )
isinstancer   )r   r   s     r   __eq__zAnyValue.__eq__   s    %***r   type[Value]c                    | j         S )z,The type of the value stored in the channel.r   r   s    r   	ValueTypezAnyValue.ValueType        xr   c                    | j         S )z/The type of the update received by the channel.r$   r%   s    r   
UpdateTypezAnyValue.UpdateType#   r'   r   r   c                ^    |                      | j        | j                  }| j        |_        |S )zReturn a copy of the channel.)r   r   r   r   )r   emptys     r   copyzAnyValue.copy(   s'    tx22jr   
checkpointr
   c                f    |                      | j        | j                  }|t          ur||_        |S r   )r   r   r   r   r   )r   r-   r+   s      r   from_checkpointzAnyValue.from_checkpoint.   s0    tx22W$$$EKr   valuesSequence[Value]c                    t          |          dk    r| j        t          u rdS t          | _        dS |d         | _        dS )Nr   FT)lenr   r   )r   r0   s     r   updatezAnyValue.update4   sA    v;;!zW$$u$
tBZ
tr   c                H    | j         t          u rt                      | j         S r   )r   r   r   r%   s    r   getzAnyValue.get?   s#    :  #%%%zr   c                    | j         t          uS r   )r   r   r%   s    r   is_availablezAnyValue.is_availableD   s    z((r   c                    | j         S r   )r   r%   s    r   r-   zAnyValue.checkpointG   s
    zr   )r   )r   r   r   r   r   r   )r   r   r   r   )r   r"   )r   r   )r-   r
   r   r   )r0   r1   r   r   )r   r
   )r   r   )__name__
__module____qualname____doc__	__slots____annotations__r   r!   propertyr&   r)   r,   r/   r5   r7   r9   r-   __classcell__)r   s   @r   r   r      s-        % % !I      + + + +    X    X      	 	 	 	   
) ) ) )       r   r   N)
__future__r   collections.abcr   typingr   r   typing_extensionsr   langgraph._internal._typingr   langgraph.channels.baser	   r
   langgraph.errorsr   __all__r    r   r   <module>rL      s    " " " " " " $ $ $ $ $ $         " " " " " " / / / / / / 6 6 6 6 6 6 6 6 . . . . . .
9 9 9 9 9wu~{5%+>? 9 9 9 9 9r   