+
     hz  c                   sv   ^ RI t R t ! R R]4      t ! R R]4      t ! R R]4      t ! R	 R
]4      t ! R R]4      t ! R R]4      t ! R R]4      t	 ! R R]4      t
 ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R]4      t ! R R ]4      t ! R! R"]4      t ! R# R$]4      t ! R% R&]4      t ! R' R(]4      t ! R) R*]4      t ! R+ R,]4      t ! R- R.]4      t ! R/ R0]4      t ! R1 R2]4      t ! R3 R4]4      t ! R5 R6]4      t ! R7 R8]4      t ! R9 R:]4      t ! R; R<]4      t ! R= R>]4      t  ! R? R@]4      t! ! RA RB]4      t" ! RC RD]4      t# ! RE RF]4      t$ ! RG RH]4      t% ! RI RJ]4      t& ! RK RL]4      t' ! RM RN]4      t( ! RO RP]4      t) ! RQ RR]4      t* ! RS RT]4      t+ ! RU RV]4      t, ! RW RX]4      t- ! RY RZ]4      t. ! R[ R\]4      t/ ! R] R^]4      t0 ! R_ R`]4      t1 ! Ra Rb]4      t2 ! Rc Rd]4      t3 ! Re Rf]4      t4 ! Rg Rh]4      t5R# )ii    Nc                s    \        V \        4      '       d'   RRP                  R V  4       4      ,           R,           # \        V 4      # )zS
Get the representation of an object, with dedicated pprint-like format for lists.
Z[z,
 c              3   sX   "   T F   p\        V4      P                  R R4      x  K"  	  R# 5i)

 N)_reprreplace).0Ze   & 4/usr/lib/python3.14/site-packages/pycparser/c_ast.py	<genexpr>Z_repr.<locals>.<genexpr>   s$     "N#Q58#3#3D%#@#@#s   (*z
])Z
isinstanceZlistjoinZrepr)Zobj   &r   r   r      s;     #tfkk"N#"NOPSXXXCy    c                   s\   a  ] tR t^t o Rt R tR t]P                  ^ RRRR3R lt	Rt
V tR# )Nodec                s   V P                   P                  R,           pRpRpV P                  RR  F  pW,          pW,          pWR,           \        \	        W4      4      P                  RRR\        V4      \        V P                   P                  4      ,           ,          ,           4      ,           ,          pRpR	R\        V P                   P                  4      ,          ,           pK  	  WR
,           ,          pV# )z>Generates a python representation of the current node
        Z(Z NZ=r    z
   Z,r   Z)i)	__class____name__	__slots__r   getattrr   Zlen)selfZresultZindentZ	separatornames   &    r   __repr__ZNode.__repr__"   s     ((3.	NN3B'DFFSjE'$*=$>$F$FtVWZ^abf^gjmnrn|n|  oF  oF  kG  _G  XH  NI  %J  K  KFIcC(?(?$@@AF ( 	3,r
   c                    R# )z2A sequence of all children that are Nodes
        N r   r	   r   childrenZNode.children5   s     	r
   FNc           
     sX   RV,          pV'       dF   VeB   VP                  WpP                  P                  ,           R,           V,           R,           4       M2VP                  WpP                  P                  ,           R,           4       V P                  '       d   V'       d?   V P                   Uu. uF  q\	        W4      3NK  	  p	pRP                  R V	 4       4      p
M<V P                   Uu. uF  p\	        W4      NK  	  ppRP                  R V 4       4      p
VP                  V
4       V'       d#   VP                  R	V P                  ,          4       VP                  R
4       V P                  4        F#  w  rVP                  VV^,           VVVVR7       K%  	  R# u upi u upi )a  Pretty print the Node and all its attributes and
children (recursively) to a buffer.

buf:
    Open IO buffer into which the Node is printed.

offset:
    Initial offset (amount of leading spaces)

attrnames:
    True if you want to see the attribute names in
    name=value pairs. False to only see the values.

nodenames:
    True if you want to see the actual node names
    within their parents.

showcoord:
    Do you want the coordinates of each Node to be
    displayed.
r   Nz <z>: z: z, c              3   4   "   T F  pR V,          x  K  	  R# 5i)z%s=%sNr   )r   Znvr   r   r   Node.show.<locals>.<genexpr>Y   s     #B6RGbLL6   c              3   r   )z%sNr   )r   Zvr   r   r   r   \   s     #<eD1HHer   z (at %s)r    )offset	attrnames	nodenames	showcoord_my_node_name)	Zwriter   r   
attr_namesr   r   coordr   show)r   Zbufr   r   r   r   r   ZleadZnZnvlistZattrstrZvlistZ
child_namechilds   &&&&&&&       r   r"   Z	Node.show:   s@   , V|2IId^^444d:]JURSIId^^444d:;???8<H1gdo.H))#B6#BB37??C?a)?C))#<e#<<IIgIIj4::-.		$#'==?ZJJz###(  * $3 I Ds   1F"/F'r   )r   
__module____qualname____firstlineno__r   r   r   sysZstdoutr"   __static_attributes____classdictcell__Z__classdict__   @r   r   r      s8     I&
 zz!uY^nr 0* 0*r
   r   c                   s4   a  ] tR t^mt o RtRtR tR tRtV t	R# )NodeVisitorap  A base NodeVisitor class for visiting c_ast nodes.
Subclass it and define your own visit_XXX methods, where
XXX is the class name you want to visit with these
methods.

For example:

class ConstantVisitor(NodeVisitor):
    def __init__(self):
        self.values = []

    def visit_Constant(self, node):
        self.values.append(node.value)

Creates a list of values of all the constant nodes
encountered below the given node. To use it:

cv = ConstantVisitor()
cv.visit(node)

Notes:

*   generic_visit() will be called for AST nodes for which
    no visit_XXX method was defined.
*   The children of nodes for which a visit_XXX was
    defined will not be visited - if you need this, call
    generic_visit() on the node.
    You can use:
        NodeVisitor.generic_visit(self, node)
*   Modeled after Python's own AST visiting facilities
    (the ast module of Python 3.0)
Nc                sN   V P                   f   / V n         V P                   P                  VP                  P                  R4      pVfV   RVP                  P                  ,           p\	        WV P
                  4      pW P                   VP                  P                  &   V! V4      # )zVisit a node.
        NZvisit_)_method_cacheZgetr   r   r   generic_visit)r   nodeZvisitorZmethods   &&  r   visitZNodeVisitor.visit   s     %!#D$$(()@)@$G? 7 77FdD,>,>?G:At~~667t}r
   c                s:    V F  pV P                  V4       K  	  R# )zdCalled if no explicit visitor function exists for a
node. Implements preorder visiting of the node.
N)r0   )r   r/   Zcs   && r   r.   ZNodeVisitor.generic_visit   s     AJJqM r
   )r-   )
r   r$   r%   r&   Z__doc__r-   r0   r.   r(   r)   r*   r+   r   r,   r,   m   s!     B M r
   r,   c                   s>   a  ] tR t^t o RtRR ltR tR tRtRt	V t
R# )		ArrayDeclNc                6    Wn         W n        W0n        W@n        R # N)typedim	dim_qualsr!   )r   r4   r5   r6   r!      &&&&&r   __init__ZArrayDecl.__init__   s    	"
r
   c                    . pV P                   e   VP                  RV P                   34       V P                  e   VP                  RV P                  34       \        V4      # )Nr4   r5   )r4   appendr5   tupler   nodelistr   r   r   ZArrayDecl.children   sM    99 (//64992E"F88%1B!CXr
   c              #     "   V P                   e   V P                   x  V P                  e   V P                  x  R # R # 5ir3   )r4   r5   r   r	   r   __iter__ZArrayDecl.__iter__   s0     99 ))O88((N     =?)r!   r5   r6   r4   )r4   r5   r6   r!   __weakref__r3   )r6   r   r$   r%   r&   r   r8   r   r?   r    r(   r)   r*   r+   r   r1   r1      s      DI !Jr
   r1   c                   s>   a  ] tR t^t o RtRR ltR tR tRtRt	V t
R# )	ArrayRefNc                *    Wn         W n        W0n        R # r3   )r   	subscriptr!   )r   r   rE   r!      &&&&r   r8   ZArrayRef.__init__   s    	"
r
   c                r9   )Nr   rE   )r   r:   rE   r;   r<   r   r   r   ZArrayRef.children   sM    99 (//64992E"F>>%xT^^7T'UXr
   c              #  r>   r3   )r   rE   r   r	   r   r?   ZArrayRef.__iter__   s1     99 ))O>>%..  &r@   )r!   r   rE   )r   rE   r!   rA   r3   r   rB   r*   r+   r   rC   rC      s      =I
! Jr
   rC   c                   s>   a  ] tR t^t o RtRR ltR tR tRtRt	V t
R# )	
AssignmentNc                r2   r3   )oplvaluervaluer!   )r   rH   rI   rJ   r!   r7   r   r8   ZAssignment.__init__   s    
r
   c                r9   )NrI   rJ   )rI   r:   rJ   r;   r<   r   r   r   ZAssignment.children   sM    ;;"HOOXt{{4K$L;;"HOOXt{{4K$LXr
   c              #  r>   r3   )rI   rJ   r   r	   r   r?   ZAssignment.__iter__   s2     ;;"++;;"++ #r@   )r!   rI   rH   rJ   )rH   rI   rJ   r!   rA   r3   rH   rB   r*   r+   r   rG   rG      s      BI Jr
   rG   c                   s>   a  ] tR t^t o RtRR ltR tR tRtRt	V t
R# )	AlignasNc                    Wn         W n        R # r3   	alignmentr!   )r   rO   r!      &&&r   r8   ZAlignas.__init__   s    "
r
   c                r    . pV P                   e   VP                  RV P                   34       \        V4      # )NrO   )rO   r:   r;   r<   r   r   r   ZAlignas.children   s/    >>%xT^^7T'UXr
   c              #  J   "   V P                   e   V P                   x  R # R # 5ir3   )rO   r   r	   r   r?   ZAlignas.__iter__   s     >>%..  &   !#rN   )rO   r!   rA   r3   r   rB   r*   r+   r   rL   rL      s      5I
! Jr
   rL   c                   s>   a  ] tR t^t o RtRR ltR tR tRtRt	V t
R# )	BinaryOpNc                r2   r3   )rH   leftrightr!   )r   rH   rU   rV   r!   r7   r   r8   ZBinaryOp.__init__   s    	

r
   c                r9   )NrU   rV   )rU   r:   rV   r;   r<   r   r   r   ZBinaryOp.children  M    99 (//64992E"F::!8??GTZZ3H#IXr
   c              #  r>   r3   )rU   rV   r   r	   r   r?   ZBinaryOp.__iter__  1     99 ))O::!** "r@   )r!   rU   rH   rV   )rH   rU   rV   r!   rA   r3   rK   rB   r*   r+   r   rT   rT      s      ?I Jr
   rT   c                   >   a  ] tR tRt o RtRR ltR tR tR	tRt	V t
R# )
Breaki  Nc                    Wn         R # r3   r!   r   r!      &&r   r8   ZBreak.__init__      
r
   c                r   Nr   r   r   r	   r   r   ZBreak.children      	r
   c              #     "   R # 5ir3   r   r   r	   r   r?   ZBreak.__iter__          r\   r!   rA   r3   r   rB   r*   r+   r   rZ   rZ           (I Jr
   rZ   c                   rY   )
Casei  Nc                rD   r3   )exprstmtsr!   )r   rh   ri   r!   rF   r   r8   ZCase.__init__      	

r
   c                    . pV P                   e   VP                  RV P                   34       \        V P                  ;'       g    . 4       F  w  r#VP                  RV,          V34       K!  	  \	        V4      # )Nrh   	stmts[%d])rh   r:   	enumerateri   r;   r   r=   Zir#      &   r   r   ZCase.children$  sa    99 (//64992E"F!$**"2"23HAOO[1_e45 4Xr
   c              #     "   V P                   e   V P                   x  V P                  ;'       g    .  F  pVx  K	  	  R # 5ir3   )rh   ri   r   r#   r   r   r?   ZCase.__iter__+  s6     99 ))Ojj&&B&EK '
   /AA)r!   rh   ri   )rh   ri   r!   rA   r3   r   rB   r*   r+   r   rg   rg     s      9I
 Jr
   rg   c                   rY   )
Casti3  Nc                rD   r3   )to_typerh   r!   )r   rt   rh   r!   rF   r   r8   ZCast.__init__5  s    	
r
   c                r9   )Nrt   rh   )rt   r:   rh   r;   r<   r   r   r   ZCast.children:  sM    <<#X__i5N%O99 (//64992E"FXr
   c              #  r>   r3   )rt   rh   r   r	   r   r?   ZCast.__iter__@  s1     <<#,,99 ))O !r@   )r!   rh   rt   )rt   rh   r!   rA   r3   r   rB   r*   r+   r   rs   rs   3  s      ;I
 Jr
   rs   c                   rY   )
CompoundiH  Nc                rM   r3   block_itemsr!   )r   rw   r!   rP   r   r8   ZCompound.__init__J      &
r
   c                    . p\        V P                  ;'       g    . 4       F  w  r#VP                  R V,          V34       K!  	  \        V4      # )zblock_items[%d])rm   rw   r:   r;   rn   ro   r   r   ZCompound.childrenN  G    !$"2"2"8"8b9HAOO.2E:; :Xr
   c              #  P   "   V P                   ;'       g    .  F  pVx  K	  	  R # 5ir3   )rw   rq   r   r   r?   ZCompound.__iter__T  %     &&,,",EK -   $&rv   )rw   r!   rA   r3   r   rB   r*   r+   r   ru   ru   H        7I Jr
   ru   c                   rY   )
CompoundLiteraliZ  Nc                rD   r3   )r4   initr!   )r   r4   r   r!   rF   r   r8   ZCompoundLiteral.__init__\      		
r
   c                r9   )Nr4   r   )r4   r:   r   r;   r<   r   r   r   ZCompoundLiteral.childrena  M    99 (//64992E"F99 (//64992E"FXr
   c              #  r>   r3   )r4   r   r   r	   r   r?   ZCompoundLiteral.__iter__g  0     99 ))O99 ))O !r@   )r!   r   r4   )r4   r   r!   rA   r3   r   rB   r*   r+   r   r   r   Z        8I
 Jr
   r   c                   rY   )
Constantio  Nc                rD   r3   )r4   valuer!   )r   r4   r   r!   rF   r   r8   ZConstant.__init__q  rj   r
   c                    . p\        V4      # r3   r;   r<   r   r   r   ZConstant.childrenv      Xr
   c              #  rb   r3   r   r   r	   r   r?   ZConstant.__iter__z  rc   rd   )r!   r4   r   )r4   r   r!   rA   r3   )r4   r   rB   r*   r+   r   r   r   o  s      9I
 %Jr
   r   c                   rY   )
Continuei  Nc                r[   r3   r\   r]   r^   r   r8   ZContinue.__init__  r_   r
   c                r   r`   r   r   r	   r   r   ZContinue.children  ra   r
   c              #  rb   r3   r   r   r	   r   r?   ZContinue.__iter__  rc   rd   r\   re   r3   r   rB   r*   r+   r   r   r     rf   r
   r   c                   rY   )
Decli  Nc
                sr    Wn         W n        W0n        W@n        WPn        W`n        Wpn        Wn        Wn        R # r3   )	r   qualsalignstoragefuncspecr4   r   bitsizer!   )
r   r   r   r   r   r   r4   r   r   r!   s
   &&&&&&&&&&r   r8   ZDecl.__init__  s/    	

 		
r
   c                   . pV P                   e   VP                  RV P                   34       V P                  e   VP                  RV P                  34       V P                  e   VP                  RV P                  34       \	        V4      # )Nr4   r   r   )r4   r:   r   r   r;   r<   r   r   r   ZDecl.children  sk    99 (//64992E"F99 (//64992E"F<<#X__i5N%OXr
   c              #     "   V P                   e   V P                   x  V P                  e   V P                  x  V P                  e   V P                  x  R # R # 5ir3   )r4   r   r   r   r	   r   r?   ZDecl.__iter__  sD     99 ))O99 ))O<<#,, $   AA)	r   r   r!   r   r   r   r   r   r4   )
r   r   r   r   r   r4   r   r   r!   rA   r3   )r   r   r   r   r   rB   r*   r+   r   r   r     s!     tI	 EJr
   r   c                   rY   )
DeclListi  Nc                rM   r3   )declsr!   )r   r   r!   rP   r   r8   ZDeclList.__init__      

r
   c                ry   z	decls[%d]rm   r   r:   r;   rn   ro   r   r   ZDeclList.children  C    !$**"2"23HAOO[1_e45 4Xr
   c              #  r{   r3   r   rq   r   r   r?   ZDeclList.__iter__  #     jj&&B&EK 'r}   )r!   r   )r   r!   rA   r3   r   rB   r*   r+   r   r   r           1I Jr
   r   c                   rY   )
Defaulti  Nc                rM   r3   )ri   r!   )r   ri   r!   rP   r   r8   ZDefault.__init__  r   r
   c                ry   )rl   )rm   ri   r:   r;   rn   ro   r   r   ZDefault.children  r   r
   c              #  r{   r3   )ri   rq   r   r   r?   ZDefault.__iter__  r   r}   )r!   ri   )ri   r!   rA   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
DoWhilei  Nc                rD   r3   condstmtr!   r   r   r   r!   rF   r   r8   ZDoWhile.__init__  r   r
   c                r9   Nr   r   r   r:   r   r;   r<   r   r   r   ZDoWhile.children  r   r
   c              #  r>   r3   r   r   r   r	   r   r?   ZDoWhile.__iter__  r   r@   r   r!   r   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
EllipsisParami  Nc                r[   r3   r\   r]   r^   r   r8   ZEllipsisParam.__init__  r_   r
   c                r   r`   r   r   r	   r   r   ZEllipsisParam.children  ra   r
   c              #  rb   r3   r   r   r	   r   r?   ZEllipsisParam.__iter__  rc   rd   r\   re   r3   r   rB   r*   r+   r   r   r     rf   r
   r   c                   rY   )
EmptyStatementi  Nc                r[   r3   r\   r]   r^   r   r8   ZEmptyStatement.__init__  r_   r
   c                r   r`   r   r   r	   r   r   ZEmptyStatement.children  ra   r
   c              #  rb   r3   r   r   r	   r   r?   ZEmptyStatement.__iter__  rc   rd   r\   re   r3   r   rB   r*   r+   r   r   r     rf   r
   r   c                   rY   )
Enumi  Nc                rD   r3   )r   valuesr!   )r   r   r   r!   rF   r   r8   ZEnum.__init__  s    	
r
   c                rQ   )Nr   )r   r:   r;   r<   r   r   r   ZEnum.children  s/    ;;"HOOXt{{4K$LXr
   c              #  rR   r3   )r   r   r	   r   r?   ZEnum.__iter__  s     ;;"++ #rS   )r!   r   r   )r   r   r!   rA   r3   r   rB   r*   r+   r   r   r     s      :I

 Jr
   r   c                   rY   )

Enumeratori  Nc                rD   r3   )r   r   r!   )r   r   r   r!   rF   r   r8   ZEnumerator.__init__  rj   r
   c                rQ   )Nr   )r   r:   r;   r<   r   r   r   ZEnumerator.children  s/    ::!8??GTZZ3H#IXr
   c              #  rR   r3   )r   r   r	   r   r?   ZEnumerator.__iter__  s     ::!** "rS   )r!   r   r   )r   r   r!   rA   r3   r   rB   r*   r+   r   r   r     s      9I

 Jr
   r   c                   rY   )
EnumeratorListi%  Nc                rM   r3   )enumeratorsr!   )r   r   r!   rP   r   r8   ZEnumeratorList.__init__'  rx   r
   c                ry   )zenumerators[%d])rm   r   r:   r;   rn   ro   r   r   ZEnumeratorList.children+  rz   r
   c              #  r{   r3   )r   rq   r   r   r?   ZEnumeratorList.__iter__1  r|   r}   )r!   r   )r   r!   rA   r3   r   rB   r*   r+   r   r   r   %  r~   r
   r   c                   rY   )
ExprListi7  Nc                rM   r3   exprsr!   r   r   r!   rP   r   r8   ZExprList.__init__9  r   r
   c                ry   z	exprs[%d]rm   r   r:   r;   rn   ro   r   r   ZExprList.children=  r   r
   c              #  r{   r3   r   rq   r   r   r?   ZExprList.__iter__C  r   r}   r!   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r   7  r   r
   r   c                   rY   )
FileASTiI  Nc                rM   r3   )extr!   )r   r   r!   rP   r   r8   ZFileAST.__init__K  s    
r
   c                ry   )zext[%d])rm   r   r:   r;   rn   ro   r   r   ZFileAST.childrenO  sA    !$((..b1HAOOY]E23 2Xr
   c              #  r{   r3   )r   rq   r   r   r?   ZFileAST.__iter__U  s      hhnn"nEK %r}   )r!   r   )r   r!   rA   r3   r   rB   r*   r+   r   r   r   I  s      /I Jr
   r   c                   rY   )
Fori[  Nc                B    Wn         W n        W0n        W@n        WPn        R # r3   )r   r   nextr   r!   )r   r   r   r   r   r!      &&&&&&r   r8   ZFor.__init__]  s    				
r
   c                st   . pV P                   e   VP                  RV P                   34       V P                  e   VP                  RV P                  34       V P                  e   VP                  RV P                  34       V P                  e   VP                  RV P                  34       \        V4      # )Nr   r   r   r   )r   r:   r   r   r   r;   r<   r   r   r   ZFor.childrend  s    99 (//64992E"F99 (//64992E"F99 (//64992E"F99 (//64992E"FXr
   c              #  s   "   V P                   e   V P                   x  V P                  e   V P                  x  V P                  e   V P                  x  V P                  e   V P                  x  R # R # 5ir3   )r   r   r   r   r   r	   r   r?   ZFor.__iter__l  sV     99 ))O99 ))O99 ))O99 ))O !s   A5A7)r   r!   r   r   r   )r   r   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r   [  s      HI Jr
   r   c                   rY   )
FuncCallix  Nc                rD   r3   )r   argsr!   )r   r   r   r!   rF   r   r8   ZFuncCall.__init__z  r   r
   c                r9   )Nr   r   )r   r:   r   r;   r<   r   r   r   ZFuncCall.children  r   r
   c              #  r>   r3   )r   r   r   r	   r   r?   ZFuncCall.__iter__  r   r@   )r   r!   r   )r   r   r!   rA   r3   r   rB   r*   r+   r   r   r   x  r   r
   r   c                   rY   )
FuncDecli  Nc                rD   r3   )r   r4   r!   )r   r   r4   r!   rF   r   r8   ZFuncDecl.__init__  r   r
   c                r9   )Nr   r4   )r   r:   r4   r;   r<   r   r   r   ZFuncDecl.children  r   r
   c              #  r>   r3   )r   r4   r   r	   r   r?   ZFuncDecl.__iter__  r   r@   )r   r!   r4   )r   r4   r!   rA   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
FuncDefi  Nc                r2   r3   )declparam_declsbodyr!   )r   r   r   r   r!   r7   r   r8   ZFuncDef.__init__  s    	&	
r
   c                sL   . pV P                   e   VP                  RV P                   34       V P                  e   VP                  RV P                  34       \        V P                  ;'       g    . 4       F  w  r#VP                  RV,          V34       K!  	  \        V4      # )Nr   r   zparam_decls[%d])r   r:   r   rm   r   r;   rn   ro   r   r   ZFuncDef.children  s    99 (//64992E"F99 (//64992E"F!$"2"2"8"8b9HAOO.2E:; :Xr
   c              #  s   "   V P                   e   V P                   x  V P                  e   V P                  x  V P                  ;'       g    .  F  pVx  K	  	  R # 5ir3   )r   r   r   rq   r   r   r?   ZFuncDef.__iter__  sK     99 ))O99 ))O&&,,",EK -s   AAA)r   r!   r   r   )r   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r     s      GI Jr
   r   c                   rY   )
Gotoi  Nc                rM   r3   r   r!   r   r   r!   rP   r   r8   ZGoto.__init__      	
r
   c                r   r3   r   r<   r   r   r   ZGoto.children  r   r
   c              #  rb   r3   r   r   r	   r   r?   ZGoto.__iter__  rc   rd   r!   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r           0I Jr
   r   c                   rY   )
IDi  Nc                rM   r3   r   r   rP   r   r8   ZID.__init__  r   r
   c                r   r3   r   r<   r   r   r   ZID.children  r   r
   c              #  rb   r3   r   r   r	   r   r?   ZID.__iter__  rc   rd   r   r   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
IdentifierTypei  Nc                rM   r3   )namesr!   )r   r   r!   rP   r   r8   ZIdentifierType.__init__  r   r
   c                r   r3   r   r<   r   r   r   ZIdentifierType.children  r   r
   c              #  rb   r3   r   r   r	   r   r?   ZIdentifierType.__iter__  rc   rd   )r!   r   )r   r!   rA   r3   )r   rB   r*   r+   r   r   r     s      1I Jr
   r   c                   rY   )
Ifi  Nc                r2   r3   r   iftrueiffalser!   r   r   r   r   r!   r7   r   r8   ZIf.__init__      	
r
   c                r   Nr   r   r   r   r:   r   r   r;   r<   r   r   r   ZIf.children  k    99 (//64992E"F;;"HOOXt{{4K$L<<#X__i5N%OXr
   c              #  r   r3   r   r   r   r   r	   r   r?   ZIf.__iter__  E     99 ))O;;"++<<#,, $r   r   r!   r   r   r   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r           EI Jr
   r   c                   rY   )
InitListi  Nc                rM   r3   r   r   rP   r   r8   ZInitList.__init__  r   r
   c                ry   r   r   rn   ro   r   r   ZInitList.children  r   r
   c              #  r{   r3   r   rq   r   r   r?   ZInitList.__iter__  r   r}   r   r   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
Labeli  Nc                rD   r3   )r   r   r!   )r   r   r   r!   rF   r   r8   ZLabel.__init__  r   r
   c                rQ   )Nr   )r   r:   r;   r<   r   r   r   ZLabel.children  /    99 (//64992E"FXr
   c              #  rR   r3   )r   r   r	   r   r?   ZLabel.__iter__#       99 ))O !rS   )r!   r   r   )r   r   r!   rA   r3   r   rB   r*   r+   r   r   r     s      8I

 Jr
   r   c                   rY   )
NamedInitializeri)  Nc                rD   r3   )r   rh   r!   )r   r   rh   r!   rF   r   r8   ZNamedInitializer.__init__+  r   r
   c                rk   )Nrh   zname[%d])rh   r:   rm   r   r;   rn   ro   r   r   ZNamedInitializer.children0  s_    99 (//64992E"F!$))//r2HAOOZ!^U34 3Xr
   c              #  rp   r3   )rh   r   rq   r   r   r?   ZNamedInitializer.__iter__7  s3     99 ))Oiioo2oEK &rr   )r!   rh   r   )r   rh   r!   rA   r3   r   rB   r*   r+   r   r   r   )  s      8I
 Jr
   r   c                   rY   )
	ParamListi?  Nc                rM   r3   )paramsr!   )r   r   r!   rP   r   r8   ZParamList.__init__A      
r
   c                ry   )z
params[%d])rm   r   r:   r;   rn   ro   r   r   ZParamList.childrenE  sD    !$++"3"34HAOO\A-u56 5Xr
   c              #  r{   r3   )r   rq   r   r   r?   ZParamList.__iter__K  s#     kk''R'EK (r}   )r!   r   )r   r!   rA   r3   r   rB   r*   r+   r   r   r   ?  s      2I Jr
   r   c                   rY   )
PtrDecliQ  Nc                rD   r3   )r   r4   r!   )r   r   r4   r!   rF   r   r8   ZPtrDecl.__init__S  s    
	
r
   c                rQ   Nr4   r4   r:   r;   r<   r   r   r   ZPtrDecl.childrenX  r   r
   c              #  rR   r3   r4   r   r	   r   r?   ZPtrDecl.__iter__]  r   rS   )r!   r   r4   )r   r4   r!   rA   r3   )r   rB   r*   r+   r   r   r   Q  s      9I

 Jr
   r   c                   rY   )
Returnic  Nc                rM   r3   )rh   r!   )r   rh   r!   rP   r   r8   ZReturn.__init__e  r   r
   c                rQ   Nrh   rh   r:   r;   r<   r   r   r   ZReturn.childreni  r   r
   c              #  rR   r3   rh   r   r	   r   r?   ZReturn.__iter__n  r   rS   )r!   rh   )rh   r!   rA   r3   r   rB   r*   r+   r   r   r   c  s      0I
 Jr
   r   c                   rY   )
StaticAssertit  Nc                rD   r3   )r   messager!   )r   r   r   r!   rF   r   r8   ZStaticAssert.__init__v  s    	
r
   c                r9   )Nr   r   )r   r:   r   r;   r<   r   r   r   ZStaticAssert.children{  sM    99 (//64992E"F<<#X__i5N%OXr
   c              #  r>   r3   )r   r   r   r	   r   r?   ZStaticAssert.__iter__  s1     99 ))O<<#,, $r@   )r   r!   r   )r   r   r!   rA   r3   r   rB   r*   r+   r   r   r   t  s      ;I
 Jr
   r   c                   rY   )
Structi  Nc                rD   r3   r   r   r!   r   r   r   r!   rF   r   r8   ZStruct.__init__  rj   r
   c                ry   r   r   rn   ro   r   r   ZStruct.children  r   r
   c              #  r{   r3   r   rq   r   r   r?   ZStruct.__iter__  r   r}   r!   r   r   r   r   r!   rA   r3   r   rB   r*   r+   r   r   r           9I
 Jr
   r   c                   rY   )
	StructRefi  Nc                r2   r3   )r   r4   fieldr!   )r   r   r4   r   r!   r7   r   r8   ZStructRef.__init__  s    		

r
   c                r9   )Nr   r   )r   r:   r   r;   r<   r   r   r   ZStructRef.children  rW   r
   c              #  r>   r3   )r   r   r   r	   r   r?   ZStructRef.__iter__  rX   r@   )r!   r   r   r4   )r   r4   r   r!   rA   r3   r   rB   r*   r+   r   r   r     s      AI Jr
   r   c                   rY   )
Switchi  Nc                rD   r3   r   r   rF   r   r8   ZSwitch.__init__  r   r
   c                r9   r   r   r<   r   r   r   ZSwitch.children  r   r
   c              #  r>   r3   r   r   r	   r   r?   ZSwitch.__iter__  r   r@   r   r   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
	TernaryOpi  Nc                r2   r3   r   r   r7   r   r8   ZTernaryOp.__init__  r   r
   c                r   r   r   r<   r   r   r   ZTernaryOp.children  r   r
   c              #  r   r3   r   r   r	   r   r?   ZTernaryOp.__iter__  r   r   r   r   r3   r   rB   r*   r+   r   r   r     r   r
   r   c                   rY   )
TypeDecli  Nc                r   r3   )declnamer   r   r4   r!   )r   r   r   r   r4   r!   r   r   r8   ZTypeDecl.__init__  s     

	
r
   c                rQ   r   r   r<   r   r   r   ZTypeDecl.children  r   r
   c              #  rR   r3   r   r   r	   r   r?   ZTypeDecl.__iter__  r   rS   )r   r!   r   r   r4   )r   r   r   r4   r!   rA   r3   )r   r   r   rB   r*   r+   r   r   r     s      NI
 2Jr
   r   c                   rY   )
Typedefi  Nc                r   r3   )r   r   r   r4   r!   )r   r   r   r   r4   r!   r   r   r8   ZTypedef.__init__  s    	
	
r
   c                rQ   r   r   r<   r   r   r   ZTypedef.children  r   r
   c              #  rR   r3   r   r   r	   r   r?   ZTypedef.__iter__  r   rS   )r!   r   r   r   r4   )r   r   r   r4   r!   rA   r3   )r   r   r   rB   r*   r+   r   r   r     s      LI
 0Jr
   r   c                   rY   )
Typenamei  Nc                r   r3   )r   r   r   r4   r!   )r   r   r   r   r4   r!   r   r   r8   ZTypename.__init__
  s    	

	
r
   c                rQ   r   r   r<   r   r   r   ZTypename.children  r   r
   c              #  rR   r3   r   r   r	   r   r?   ZTypename.__iter__  r   rS   )r   r!   r   r   r4   )r   r   r   r4   r!   rA   r3   )r   r   r   rB   r*   r+   r   r   r     s      JI
 .Jr
   r   c                   rY   )
UnaryOpi  Nc                rD   r3   )rH   rh   r!   )r   rH   rh   r!   rF   r   r8   ZUnaryOp.__init__  s    	
r
   c                rQ   r   r   r<   r   r   r   ZUnaryOp.children#  r   r
   c              #  rR   r3   r   r   r	   r   r?   ZUnaryOp.__iter__(  r   rS   )r!   rh   rH   )rH   rh   r!   rA   r3   rK   rB   r*   r+   r   r   r     s      6I

 Jr
   r   c                   rY   )
Unioni.  Nc                rD   r3   r   r   rF   r   r8   ZUnion.__init__0  rj   r
   c                ry   r   r   rn   ro   r   r   ZUnion.children5  r   r
   c              #  r{   r3   r   rq   r   r   r?   ZUnion.__iter__;  r   r}   r   r   r3   r   rB   r*   r+   r   r   r   .  r   r
   r   c                   rY   )
WhileiA  Nc                rD   r3   r   r   rF   r   r8   ZWhile.__init__C  r   r
   c                r9   r   r   r<   r   r   r   ZWhile.childrenH  r   r
   c              #  r>   r3   r   r   r	   r   r?   ZWhile.__iter__N  r   r@   r   r   r3   r   rB   r*   r+   r   r   r   A  r   r
   r   c                   rY   )
PragmaiV  Nc                rM   r3   )stringr!   )r   r  r!   rP   r   r8   ZPragma.__init__X  r   r
   c                r   r3   r   r<   r   r   r   ZPragma.children\  r   r
   c              #  rb   r3   r   r   r	   r   r?   ZPragma.__iter__`  rc   rd   )r!   r  )r  r!   rA   r3   )r  rB   r*   r+   r   r  r  V  s      2I Jr
   r  )6r'   r   Zobjectr   r,   r1   rC   rG   rL   rT   rZ   rg   rs   ru   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r   r
   r   <module>r     sy  & L*6 L*^8& 8t! !,t * ,d "t ,D 4 ,4 *t $d *%t %"t E4 E<t $d $d *D T 4 $ $T $t $d $$ :t *t *d 44    T   2t $D $t , $d $T "4 *T & ,T * 22t 2(0d 0(.t .(d $D &D *T r
   