
    <i              	          S SK Jr  S SKJr  S SKJrJr  S SKJr  S SK	J
r
  S SKJrJr  S SKJrJr  Sr " S	 S
\\   \\\\4   5      rg)    )annotations)Sequence)AnyGeneric)SelfMISSING)BaseChannelValue)EmptyChannelErrorInvalidUpdateError)UntrackedValuec                     ^  \ rS rSr% SrSrS\S'   S\S'   SSU 4S jjjrSS	 jr\	SS
 j5       r
\	SS j5       rSS jrSS jrSS jrSS jrSS jrSS jrSrU =r$ )r      z3Stores the last value received, never checkpointed.)valueguardboolr   Value | Anyr   c                F   > [         TU ]  U5        X l        [        U l        g N)super__init__r   r	   r   )selftypr   	__class__s      r/home/dmtnaga/Documents/work/airagagent/rag_env/lib/python3.13/site-packages/langgraph/channels/untracked_value.pyr   UntrackedValue.__init__   s    

    c                b    [        U[        5      =(       a    UR                  U R                  :H  $ r   )
isinstancer   r   )r   r   s     r   __eq__UntrackedValue.__eq__   s!    %0NU[[DJJ5NNr   c                    U R                   $ )z,The type of the value stored in the channel.r   r   s    r   	ValueTypeUntrackedValue.ValueType        xxr   c                    U R                   $ )z/The type of the update received by the channel.r$   r%   s    r   
UpdateTypeUntrackedValue.UpdateType$   r(   r   c                    U R                  U R                  U R                  5      nU R                  Ul        U R                  Ul        U$ )zReturn a copy of the channel.)r   r   r   keyr   )r   emptys     r   copyUntrackedValue.copy)   s5    txx4HH	jjr   c                    [         $ r   r   r%   s    r   
checkpointUntrackedValue.checkpoint0   s    r   c                t    U R                  U R                  U R                  5      nU R                  Ul        U$ r   )r   r   r   r-   )r   r2   r.   s      r   from_checkpointUntrackedValue.from_checkpoint3   s*    txx4HH	r   c                    [        U5      S:X  a  g[        U5      S:w  a*  U R                  (       a  [        SU R                   S35      eUS   U l        g)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   valuess     r   updateUntrackedValue.update8   sW    v;!v;!

$488*  %h  i  BZ
r   c                T    U R                   [        L a
  [        5       eU R                   $ r   )r   r	   r   r%   s    r   getUntrackedValue.getC   s!    :: #%%zzr   c                &    U R                   [        L$ r   )r   r	   r%   s    r   is_availableUntrackedValue.is_availableH   s    zz((r   )r   r   )T)r   type[Value]r   r   returnNone)r   objectrE   r   )rE   rD   )rE   r   )rE   r   )r2   r   rE   r   )r;   zSequence[Value]rE   r   )rE   r   )rE   r   )__name__
__module____qualname____firstlineno____doc__	__slots____annotations__r   r!   propertyr&   r*   r/   r2   r5   r<   r?   rB   __static_attributes____classcell__)r   s   @r   r   r      sq    ="IK 
O    
	
) )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>r[      s=    " $  " / 6 B
:)WU^[u1D%E :)r   