
    <hE                        S SK Jr  S SKrSSKJrJrJrJrJ	r	J
r
JrJrJrJrJrJr  SSKJr  \R&                  (       a  SSKJr   " S S\\R*                  \      \5      rg)	    )annotationsN   )InterpreterObjectIterableObjectMesonOperatorObjectHoldertyped_operatornoKwargs	noPosargsnoArgsFlatteningtyped_pos_args
FeatureNewTYPE_varInvalidArguments)PlusAssignmentNode)TYPE_kwargsc            	         \ rS rSr\R
                  \S 4\R                  \S 4\R                  \	S 4\R                  \	S 40rSS jrSS jrSS jrSS	 jr\\\" S
\	5      \R(                  " S5      SS j5       5       5       5       r\\\R(                  " S5      S S j5       5       5       r\\\" S\\	/S9\R(                  " S5      S!S j5       5       5       5       r\" \R6                  \	5      \R8                  " \R6                  5      S"S j5       5       r\" \R<                  \5      \R8                  " \R<                  5      S#S j5       5       r\\\ " SS5      \R(                  " S5      S$S j5       5       5       5       r!Sr"g)%ArrayHolder   c                     U R                   U:H  $ Nheld_objectobjxs     ڈ/mnt/mint/home/seanl/mnt/public/Repos/ladybird/Build/vcpkg/downloads/tools/meson-1.9.0-d1fcc2/mesonbuild/interpreter/primitives/array.py<lambda>ArrayHolder.<lambda>   s    COOq4H    c                     U R                   U:g  $ r   r   r   s     r   r   r       s    18Lr    c                    XR                   ;   $ r   r   r   s     r   r   r   !   s    !2Fr    c                    XR                   ;  $ r   r   r   s     r   r   r   "   s    a6Nr    c                    g)Narray selfs    r   display_nameArrayHolder.display_name%   s    r    c                    g r   r&   r'   s    r   iter_tuple_sizeArrayHolder.iter_tuple_size(   s    r    c                ,    [        U R                  5      $ r   )iterr   r'   s    r   	iter_selfArrayHolder.iter_self+   s    D$$%%r    c                ,    [        U R                  5      $ r   lenr   r'   s    r   sizeArrayHolder.size.   s    4##$$r    zarray.containscontainsc                <   ^^ SUU4S jjmT" U R                   5      $ )Nc                z   > U  H4  n[        U[        5      (       a  T" U5      nU(       a    gUTS   :X  d  M4    g   g)NTr   F
isinstancelist)elelementfoundargscheck_containss      r   rA   3ArrayHolder.contains_method.<locals>.check_contains6   s>    gt,,*73E#d1g%  r    )r=   T.List[TYPE_var]returnboolr   )r(   r@   kwargsrA   s    ` @r   contains_methodArrayHolder.contains_method1   s     
	 	 d..//r    lengthc                ,    [        U R                  5      $ r   r3   )r(   r@   rF   s      r   length_methodArrayHolder.length_methodA   s     4##$$r    z	array.get)optargsgetc                    US   nU[        U R                  5      * :  d  U[        U R                  5      :  a0  US   c%  [        SU S[        U R                  5       S35      eUS   $ U R                  U   $ )Nr      zArray index z$ is out of bounds for array of size .)r4   r   r   )r(   r@   rF   indexs       r   
get_methodArrayHolder.get_methodG   s    
 QC(()))Uc$:J:J6K-KAw&eW<`adeieueuav`wwx'yzz7N&&r    c                    [        U[        5      (       dN  [        U R                  [        5      (       d,  [        R
                  " SSU R                  SU R                  S9  U/nU R                  U-   $ )Nzlist.<plus>z0.60.0z&The right hand operand was not a list.)location)r;   r<   current_noder   r   
single_use
subprojectr   r(   others     r   op_plusArrayHolder.op_plusS   sb     %&&d//1CDD%%mXtPx/3/@/@BGE%''r    c           	          U R                   U   $ ! [         a&    [        SU S[        U R                   5       S35      ef = f)NzIndex z  out of bounds of array of size rQ   )r   
IndexErrorr   r4   rZ   s     r   op_indexArrayHolder.op_index]   sT    	m##E** 	m"VE72RSVW[WgWgShRiij#kll	ms	    0Azarray.flattenz1.9.0flattenc                J   ^ SU4S jjm[        T" U R                  5      5      $ )Nc              3  x   >#    [        U [        5      (       a  U  H  nT" U5       S h  vN   M     g U v   g  N7fr   r:   )r   orb   s     r   rb   +ArrayHolder.flatten_method.<locals>.flattenj   s6     #t$$A&qz))  	 *s   &:8:)r   r   rD   zT.Iterable[TYPE_var])r<   r   )r(   r@   rF   rb   s      @r   flatten_methodArrayHolder.flatten_methode   s     
	 GD,,-..r    r&   N)rD   str)rD   None)rD   zT.Iterator[TYPE_var])rD   int)r@   zT.Tuple[object]rF   r   rD   rE   )r@   rC   rF   r   rD   rk   )r@   z"T.Tuple[int, T.Optional[TYPE_var]]rF   r   rD   r   )r[   r   rD   rC   )r[   rk   rD   r   )r@   rC   rF   r   rD   r   )#__name__
__module____qualname____firstlineno__r   EQUALSr<   
NOT_EQUALSINobjectNOT_INTRIVIAL_OPERATORSr)   r,   r0   r5   r   r
   r   r   methodrG   r   rK   rk   rS   r	   PLUSoperatorr\   INDEXr`   r   rg   __static_attributes__r&   r    r   r   r      s    	t%HI  4)L"M6#FGv'NO	&% $f-j)
0 * .  
0 h'% (  % Kvh7e$' % 8  ' M&&/ 2 23( 4 0( M''- 3 34m 5 .m )i(/ ) *  /r    r   )
__future__r   typingTinterpreterbaser   r   r   r   r	   r
   r   r   r   r   r   r   mparserr   TYPE_CHECKINGr   Listr   r&   r    r   <module>r      sN    #      *??.U/,qvvh/0. U/r    