
    }
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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InvalidUpdateError)UntrackedValuec                       e Zd ZU dZdZded<   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   z3Stores the last value received, never checkpointed.)valueguardboolr   Value | Anyr   Ttyptype[Value]returnNonec                p    t                                          |           || _        t          | _        d S N)super__init__r   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/untracked_value.pyr   zUntrackedValue.__init__   s-    



    objectc                L    t          |t                    o|j        | j        k    S r   )
isinstancer   r   )r   r   s     r   __eq__zUntrackedValue.__eq__   s     %00NU[DJ5NNr   c                    | j         S )z,The type of the value stored in the channel.r   r   s    r   	ValueTypezUntrackedValue.ValueType        xr   c                    | j         S )z/The type of the update received by the channel.r%   r&   s    r   
UpdateTypezUntrackedValue.UpdateType$   r(   r   r   c                v    |                      | j        | j                  }| j        |_        | j        |_        |S )zReturn a copy of the channel.)r   r   r   keyr   )r   emptys     r   copyzUntrackedValue.copy)   s0    tx44H	jr   c                    t           S r   r   r&   s    r   
checkpointzUntrackedValue.checkpoint0   s    r   r0   r   c                ^    |                      | j        | j                  }| j        |_        |S r   )r   r   r   r,   )r   r0   r-   s      r   from_checkpointzUntrackedValue.from_checkpoint3   s'    tx44H	r   valuesSequence[Value]c                    t          |          dk    rdS t          |          dk    r| j        rt          d| j         d          |d         | _        dS )Nr   F   zAt key 'z': UntrackedValue(guard=True) can receive only one value per step. Use guard=False if you want to store any one of multiple values.T)lenr   r   r,   r   )r   r3   s     r   updatezUntrackedValue.update8   sp    v;;!5v;;!
$ i48  i  i  i   BZ
tr   c                H    | j         t          u rt                      | j         S r   )r   r	   r   r&   s    r   getzUntrackedValue.getC   s#    :  #%%%zr   c                    | j         t          uS r   )r   r	   r&   s    r   is_availablezUntrackedValue.is_availableH   s    z((r   )T)r   r   r   r   r   r   )r   r    r   r   )r   r   )r   r   )r   r   )r0   r   r   r   )r3   r4   r   r   )r   r   )r   r   )__name__
__module____qualname____doc__	__slots____annotations__r   r#   propertyr'   r*   r.   r0   r2   r9   r;   r=   __classcell__)r   s   @r   r   r      s4        =="IKKK      
O O O O    X    X         
	 	 	 	   
) ) ) ) ) ) ) )r   r   N)
__future__r   collections.abcr   typingr   r   typing_extensionsr   langgraph._internal._typingr	   langgraph.channels.baser
   r   langgraph.errorsr   r   __all__r    r   r   <module>rO      s    " " " " " " $ $ $ $ $ $         " " " " " " / / / / / / 6 6 6 6 6 6 6 6 B B B B B B B B
:) :) :) :) :)WU^[u1D%E :) :) :) :) :)r   