
    UEjQ%                         d Z ddlZddl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mZmZ ddlZ ed      Z G d de	e         Z G d d	e	e         Ze G d
 d             Zg dZ ed eD              ZdZ	 	 ddej2                  deegef   dee   dedeedf   f
dZ	 	 ddej2                  deegef   dee   dedeeddf   f
dZdddddedeegef   dee   dee   dedeee   eee   f   fdZde dede!fdZ"y) zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.    N)	dataclassasdict)	AnyCallableGenericListTypeVarOptional	GeneratorAsyncGeneratorTupleTc                       e Zd ZU ee   ed<   ej                  ed<   ee	ddf   ed<   e
ed<   	 	 	 ddej                  deege	f   dee   dee   de
f
d	Zd
 Zd Zd Zd Zd Zy)Stream
client_refresponseN	generator_closeddecodersentineldata_requiredc                 V    || _         t        ||||      | _        || _        d| _        y N)r   F)r   stream_eventsr   r   r   selfr   r   r   r   r   s         ]/var/www/html/qr/venv/lib/python3.12/site-packages/google/genai/_gaos/utils/eventstreaming.py__init__zStream.__init__.   s0     !&gx}
 %    c                     | S N r   s    r   __iter__zStream.__iter__=       r   c                 P    | j                   rt        t        | j                        S r!   )r   StopIterationnextr   r#   s    r   __next__zStream.__next__@   s    <<DNN##r   c                     | S r!   r"   r#   s    r   	__enter__zStream.__enter__E   r%   r   c                 $    | j                          y r!   closer   exc_typeexc_valexc_tbs       r   __exit__zStream.__exit__H   s    

r   c                 F    d| _         | j                  j                          y NT)r   r   r.   r#   s    r   r.   zStream.closeK   s    r   NNT)__name__
__module____qualname__r
   object__annotations__httpxResponser   r   boolr   strr   r$   r)   r+   r3   r.   r"   r   r   r   r   &   s       nnD$''M #''+".. 3%(# 3-	
 V$ $
r   r   c                       e Zd ZU ee   ed<   ej                  ed<   ee	df   ed<   e
ed<   	 	 	 ddej                  deege	f   dee   dee   de
f
d	Zd
 Zd Zd Zd Zd Zy)AsyncStreamr   r   Nr   r   r   r   r   c                 V    || _         t        ||||      | _        || _        d| _        y r   )r   stream_events_asyncr   r   r   r   s         r   r   zAsyncStream.__init__X   s0     !,gx}
 %r   c                     | S r!   r"   r#   s    r   	__aiter__zAsyncStream.__aiter__g   r%   r   c                 v   K   | j                   rt        | j                  j                          d {   S 7 wr!   )r   StopAsyncIterationr   	__anext__r#   s    r   rH   zAsyncStream.__anext__j   s,     <<$$^^--////s   0979c                    K   | S wr!   r"   r#   s    r   
__aenter__zAsyncStream.__aenter__o   s     s   c                 @   K   | j                          d {    y 7 wr!   r-   r/   s       r   	__aexit__zAsyncStream.__aexit__r   s     jjls   c                 b   K   d| _         | j                  j                          d {    y 7 wr5   )r   r   acloser#   s    r   r.   zAsyncStream.closeu   s#     mm""$$$s   %/-/r6   )r7   r8   r9   r
   r:   r;   r<   r=   r   r   r>   r   r?   r   rE   rH   rJ   rL   r.   r"   r   r   rA   rA   P   s       nnag&&M #''+".. 3%(# 3-	
 V$ 0
%r   rA   c                   X    e Zd ZU dZee   ed<   dZee   ed<   dZe	ed<   dZ
ee   ed<   y)ServerEventNideventdataretry)r7   r8   r9   rQ   r
   r?   r;   rR   rS   r   rT   intr"   r   r   rP   rP   z   s6    BE8C=D#E8C=r   rP   )s   

s   
s   

s   
s   

s   s   
s   

c              #   2   K   | ]  }t        |        y wr!   )len).0bs     r   	<genexpr>rZ      s     :!s1v:s   s   ﻿Tr   r   r   r   returnc           	       K   	 t               }d}d }| j                         2 3 d {   }t        |      dk(  r'|j                  t              r|t        t              d  }t        |      }||z  }t        ||t        z
  dz         }	t        |	t        |            D ]z  }
||
|
dz    }d }|dv rt        D ]  }t        |
||      }| n |0|||
 }|
t        |      z   }t        |||||      \  }}}|| |sa  | j                          d {    y  |dkD  s||d  }d}7 7 6 t        |||||      \  }}}|| | j                          d {  7   y # | j                          d {  7   w xY wwNr      )      
)rawr   r   event_idr   )	bytearrayaiter_bytesrW   
startswithUTF8_BOMmaxMAX_BOUNDARY_LENrangeMESSAGE_BOUNDARIES_peek_sequence_parse_eventrN   r   r   r   r   bufferpositionrb   chunkold_lensearch_starticharseqboundaryblockrR   discard_s                     r   rC   rC      s    1 "&#//1 !	 !	%6{aE$4$4X$>c(mo.&kGeOFx3C)Ca)GHL<V5 a!a%('+>)$6 ",QA?!" ;x*s3x<+7#%%"/,(w $K  ooO2 !|	*C!	Z 	 [ 2F )'
w Koohoos   F E" D,D'D,BE" 6E" <E" >F D*F E" 	E" 'D,*F ,E" F EF "E=6E97E==F c           	   #     K   	 t               }d}d }| j                         D ]  }t        |      dk(  r'|j                  t              r|t        t              d  }t        |      }||z  }t        ||t        z
  dz         }	t        |	t        |            D ]q  }
||
|
dz    }d }|dv rt        D ]  }t        |
||      }| n |0|||
 }|
t        |      z   }t        |||||      \  }}}|| |s`  | j                          y  |dkD  s||d  }d} t        |||||      \  }}}|| | j                          y # | j                          w xY wwr]   )rc   
iter_bytesrW   re   rf   rg   rh   ri   rj   rk   rl   r.   rm   s                     r   r   r      s    1"&((* !	E6{aE$4$4X$>c(mo.&kGeOFx3C)Ca)GHL<V5 a!a%('+>)$6 ",QA?!" ;x*s3x<+7#%%"/,(w $K  	O2 !|	*C!	F )'
w Ks;   EB:E ?5E 5E 7EE #E 2EEE)r   rb   r   ra   rb   c                    | j                         }t        j                  d|      }d}t               }g }	|D ]  }
|
s|
j	                  d      }|dk(  r|
}d}|dkD  r8|
d| }|t        |
      dz
  k  r|
|dz   d  nd}t        |      r|d   dk(  r|dd  }|dk(  r
||_        d	}m|d
k(  r|	j                  |       d	}|dk(  r
d	}d|vs|}|dk(  s|j                         rt        |      |_
        d	} ||_        t        |	      }dj                  |	      }|r|r
||k(  rd d	|fS |s	|r|rd d|fS |r	 t        j                  |      |_        d }|rPt%        |      j'                         D ci c]  \  }}||d
k(  r|r|| }}} |t        j(                  |            }|d|fS # t        j"                  $ r
 ||_        Y uw xY wc c}}w )Nz\r?\n|\rF:r    r^    rR   TrS   rQ    rT   
)decoderesplitrP   findrW   rR   appendisdigitrU   rT   rQ   r>   joinjsonloadsrS   JSONDecodeErrorr   itemsdumps)ra   r   r   rb   r   rw   linespublishrR   
data_partslinedelimfieldvaluehas_datarS   outkvout_dicts                       r   rl   rl     s    JJLEHH[%(EGMEJ 		#A:195ME).TQ)>D%BE5zeAh#oab	GEKGf_e$Gd]GU" g}}!%jG;> EHJH99Z DH!1T8## MUH$$	D)EJ C u++-
1}f qD
 

 djj*+x ## 	EJ	

s   5F( /G(GGro   rn   sequencec                 |    t        |      t        |      | z
  kD  ry t        |      D ]  \  }}|| |z      |k7  s y  |S r!   )rW   	enumerate)ro   rn   r   rs   ru   s        r   rk   rk   N  sM    
8}Fh./H% 3(Q,3& Or   r5   )#__doc__r   r   dataclassesr   r   typingr   r   r   r   r	   r
   r   r   r   r<   r   r   rA   rP   rj   rg   rh   rf   r=   r?   r>   rC   r   rc   rl   rU   bytesrk   r"   r   r   <module>r      s  " H 	  )
 
 
 CL'WQZ 'T'%'!* '%T      	  :'9::  #	7 nn7 seQh7  sm7  	7 
 AtG7 z #	7nn7seQh7 sm7 	7
 q$}7| #"F 	F  seQhF  sm	F 
 smF  F  8A;hsm+,F RS ) u r   