HEX
Server: Apache
System: Linux 185.122.168.184.host.secureserver.net 5.14.0-570.60.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Nov 5 05:00:59 EST 2025 x86_64
User: barbeatleanalyti (1024)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //var/opt/nydus/ops/pycparser/__pycache__/c_ast.cpython-39.pyc
a

�,�h�z�@sDddlZdd�ZGdd�de�ZGdd�de�ZGdd	�d	e�ZGd
d�de�ZGdd
�d
e�ZGdd�de�ZGdd�de�Z	Gdd�de�Z
Gdd�de�ZGdd�de�ZGdd�de�Z
Gdd�de�ZGdd�de�ZGdd�de�ZGd d!�d!e�ZGd"d#�d#e�ZGd$d%�d%e�ZGd&d'�d'e�ZGd(d)�d)e�ZGd*d+�d+e�ZGd,d-�d-e�ZGd.d/�d/e�ZGd0d1�d1e�ZGd2d3�d3e�ZGd4d5�d5e�ZGd6d7�d7e�ZGd8d9�d9e�ZGd:d;�d;e�ZGd<d=�d=e�ZGd>d?�d?e�Z Gd@dA�dAe�Z!GdBdC�dCe�Z"GdDdE�dEe�Z#GdFdG�dGe�Z$GdHdI�dIe�Z%GdJdK�dKe�Z&GdLdM�dMe�Z'GdNdO�dOe�Z(GdPdQ�dQe�Z)GdRdS�dSe�Z*GdTdU�dUe�Z+GdVdW�dWe�Z,GdXdY�dYe�Z-GdZd[�d[e�Z.Gd\d]�d]e�Z/Gd^d_�d_e�Z0Gd`da�dae�Z1Gdbdc�dce�Z2Gddde�dee�Z3Gdfdg�dge�Z4Gdhdi�die�Z5dS)j�NcCs2t|t�r&dd�dd�|D��dSt|�SdS)z[
    Get the representation of an object, with dedicated pprint-like format for lists.
    �[z,
 css|]}t|��dd�VqdS)�
�
 N)�_repr�replace)�.0�e�r	�@/opt/nydus/tmp/pip-target-wkfpz8uv/lib/python/pycparser/c_ast.py�	<genexpr>�z_repr.<locals>.<genexpr>z
]N)�
isinstance�list�join�repr)�objr	r	r
rs
rc@s8eZdZdZdd�Zdd�Zejdddddfd	d
�ZdS)�Noder	cCs�|jjd}d}d}|jdd�D]f}||7}||7}||dtt||���dddt|�t|jj��7}d	}d
dt|jj�}q"||d7}|S)z? Generates a python representation of the current node
        �(�N����=rz
  � �,r�))�	__class__�__name__�	__slots__r�getattrr�len)�self�result�indent�	separator�namer	r	r
�__repr__"s:z
Node.__repr__cCsdS)z3 A sequence of all children that are Nodes
        Nr	�rr	r	r
�children5sz
Node.childrenrFNc
	s�d|}|r4|dur4|�|�jjd|d�n|�|�jjd��jr�|r~�fdd��jD�}d�d	d
�|D��}	n(�fdd��jD�}
d�dd
�|
D��}	|�|	�|r�|�d
�j�|�d����D]"\}}|j||d||||d�q�dS)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.
        rNz <z>: z: csg|]}|t�|�f�qSr	�r�r�nr%r	r
�
<listcomp>XrzNode.show.<locals>.<listcomp>z, css|]}d|VqdS)z%s=%sNr	)r�nvr	r	r
rYrzNode.show.<locals>.<genexpr>csg|]}t�|��qSr	r'r(r%r	r
r*[rcss|]}d|VqdS)z%sNr	)r�vr	r	r
r\rz (at %s)r�)�offset�	attrnames�	nodenames�	showcoord�
_my_node_name)�writerr�
attr_namesr�coordr&�show)
r�bufr.r/r0r1r2ZleadZnvlistZattrstr�vlistZ
child_name�childr	r%r
r6:s. 

�z	Node.show)	r�
__module__�__qualname__rr$r&�sys�stdoutr6r	r	r	r
rsrc@s$eZdZdZdZdd�Zdd�ZdS)�NodeVisitora- 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)
    NcCsZ|jduri|_|j�|jjd�}|durRd|jj}t|||j�}||j|jj<||�S)z Visit a node.
        N�visit_)�
_method_cache�getrrr�
generic_visit)r�node�visitor�methodr	r	r
�visit�s
zNodeVisitor.visitcCs|D]}|�|�qdS)zy Called if no explicit visitor function exists for a
            node. Implements preorder visiting of the node.
        N)rF)rrC�cr	r	r
rB�szNodeVisitor.generic_visit)rr:r;�__doc__r@rFrBr	r	r	r
r>ms!r>c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	ArrayDecl)�type�dim�	dim_qualsr5�__weakref__NcCs||_||_||_||_dS�N)rJrKrLr5)rrJrKrLr5r	r	r
�__init__�szArrayDecl.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)NrJrK)rJ�appendrK�tuple�r�nodelistr	r	r
r&�szArrayDecl.childrenccs(|jdur|jV|jdur$|jVdSrN)rJrKr%r	r	r
�__iter__�s

zArrayDecl.__iter__)rL)N�rr:r;rrOr&rTr4r	r	r	r
rI�s

rIc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ArrayRef)r#�	subscriptr5rMNcCs||_||_||_dSrN)r#rWr5)rr#rWr5r	r	r
rO�szArrayRef.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr#rW)r#rPrWrQrRr	r	r
r&�szArrayRef.childrenccs(|jdur|jV|jdur$|jVdSrN)r#rWr%r	r	r
rT�s

zArrayRef.__iter__r	)NrUr	r	r	r
rV�s

rVc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
Assignment)�op�lvalue�rvaluer5rMNcCs||_||_||_||_dSrN)rYrZr[r5)rrYrZr[r5r	r	r
rO�szAssignment.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)NrZr[)rZrPr[rQrRr	r	r
r&�szAssignment.childrenccs(|jdur|jV|jdur$|jVdSrN)rZr[r%r	r	r
rT�s

zAssignment.__iter__�rY)NrUr	r	r	r
rX�s

rXc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Alignas)�	alignmentr5rMNcCs||_||_dSrN)r^r5)rr^r5r	r	r
rO�szAlignas.__init__cCs&g}|jdur|�d|jf�t|�S)Nr^)r^rPrQrRr	r	r
r&�szAlignas.childrenccs|jdur|jVdSrN)r^r%r	r	r
rT�s
zAlignas.__iter__r	)NrUr	r	r	r
r]�s

r]c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�BinaryOp)rY�left�rightr5rMNcCs||_||_||_||_dSrN)rYr`rar5)rrYr`rar5r	r	r
rO�szBinaryOp.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr`ra)r`rPrarQrRr	r	r
r&szBinaryOp.childrenccs(|jdur|jV|jdur$|jVdSrN)r`rar%r	r	r
rTs

zBinaryOp.__iter__r\)NrUr	r	r	r
r_�s

r_c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Break�r5rMNcCs
||_dSrN�r5�rr5r	r	r
rOszBreak.__init__cCsdS�Nr	r	r%r	r	r
r&szBreak.childrenccsdSrNr	r%r	r	r
rTszBreak.__iter__r	)NrUr	r	r	r
rbs

rbc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Case)�expr�stmtsr5rMNcCs||_||_||_dSrN)rhrir5)rrhrir5r	r	r
rOsz
Case.__init__cCsPg}|jdur|�d|jf�t|jp(g�D]\}}|�d||f�q,t|�S)Nrh�	stmts[%d])rhrP�	enumeraterirQ�rrS�ir9r	r	r
r&$s
z
Case.childrenccs,|jdur|jV|jpgD]
}|VqdSrN)rhri�rr9r	r	r
rT+s
z
Case.__iter__r	)NrUr	r	r	r
rgs

rgc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Cast)�to_typerhr5rMNcCs||_||_||_dSrN)rprhr5)rrprhr5r	r	r
rO5sz
Cast.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nrprh)rprPrhrQrRr	r	r
r&:sz
Cast.childrenccs(|jdur|jV|jdur$|jVdSrN)rprhr%r	r	r
rT@s

z
Cast.__iter__r	)NrUr	r	r	r
ro3s

roc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Compound)�block_itemsr5rMNcCs||_||_dSrN)rrr5)rrrr5r	r	r
rOJszCompound.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S)Nzblock_items[%d])rkrrrPrQrlr	r	r
r&NszCompound.childrenccs|jpgD]
}|Vq
dSrN)rrrnr	r	r
rTTszCompound.__iter__r	)NrUr	r	r	r
rqHs

rqc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�CompoundLiteral)rJ�initr5rMNcCs||_||_||_dSrN)rJrtr5)rrJrtr5r	r	r
rO\szCompoundLiteral.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)NrJrt)rJrPrtrQrRr	r	r
r&aszCompoundLiteral.childrenccs(|jdur|jV|jdur$|jVdSrN)rJrtr%r	r	r
rTgs

zCompoundLiteral.__iter__r	)NrUr	r	r	r
rsZs

rsc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Constant)rJ�valuer5rMNcCs||_||_||_dSrN)rJrvr5)rrJrvr5r	r	r
rOqszConstant.__init__cCsg}t|�SrN�rQrRr	r	r
r&vszConstant.childrenccsdSrNr	r%r	r	r
rTzszConstant.__iter__)rJrv)NrUr	r	r	r
ruos

ruc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ContinuercNcCs
||_dSrNrdrer	r	r
rO�szContinue.__init__cCsdSrfr	r%r	r	r
r&�szContinue.childrenccsdSrNr	r%r	r	r
rT�szContinue.__iter__r	)NrUr	r	r	r
rx�s

rxc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Decl)
r#�quals�align�storage�funcspecrJrt�bitsizer5rMNc

Cs:||_||_||_||_||_||_||_||_|	|_dSrN)	r#rzr{r|r}rJrtr~r5)
rr#rzr{r|r}rJrtr~r5r	r	r
rO�sz
Decl.__init__cCsZg}|jdur|�d|jf�|jdur8|�d|jf�|jdurR|�d|jf�t|�S)NrJrtr~)rJrPrtr~rQrRr	r	r
r&�s
z
Decl.childrenccs:|jdur|jV|jdur$|jV|jdur6|jVdSrN)rJrtr~r%r	r	r
rT�s


z
Decl.__iter__)r#rzr{r|r})NrUr	r	r	r
ry�s

ryc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�DeclList)�declsr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rO�szDeclList.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S�Nz	decls[%d]�rkr�rPrQrlr	r	r
r&�szDeclList.childrenccs|jpgD]
}|Vq
dSrN�r�rnr	r	r
rT�szDeclList.__iter__r	)NrUr	r	r	r
r�s

rc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Default)rir5rMNcCs||_||_dSrN)rir5)rrir5r	r	r
rO�szDefault.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S)Nrj)rkrirPrQrlr	r	r
r&�szDefault.childrenccs|jpgD]
}|Vq
dSrN)rirnr	r	r
rT�szDefault.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�DoWhile��cond�stmtr5rMNcCs||_||_||_dSrN�r�r�r5�rr�r�r5r	r	r
rO�szDoWhile.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S�Nr�r��r�rPr�rQrRr	r	r
r&�szDoWhile.childrenccs(|jdur|jV|jdur$|jVdSrN�r�r�r%r	r	r
rT�s

zDoWhile.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
EllipsisParamrcNcCs
||_dSrNrdrer	r	r
rO�szEllipsisParam.__init__cCsdSrfr	r%r	r	r
r&�szEllipsisParam.childrenccsdSrNr	r%r	r	r
rT�szEllipsisParam.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�EmptyStatementrcNcCs
||_dSrNrdrer	r	r
rO�szEmptyStatement.__init__cCsdSrfr	r%r	r	r
r&�szEmptyStatement.childrenccsdSrNr	r%r	r	r
rT�szEmptyStatement.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Enum)r#�valuesr5rMNcCs||_||_||_dSrN)r#r�r5)rr#r�r5r	r	r
rOsz
Enum.__init__cCs&g}|jdur|�d|jf�t|�S)Nr�)r�rPrQrRr	r	r
r&sz
Enum.childrenccs|jdur|jVdSrN)r�r%r	r	r
rT
s
z
Enum.__iter__�r#)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
Enumerator)r#rvr5rMNcCs||_||_||_dSrN)r#rvr5)rr#rvr5r	r	r
rOszEnumerator.__init__cCs&g}|jdur|�d|jf�t|�S)Nrv)rvrPrQrRr	r	r
r&szEnumerator.childrenccs|jdur|jVdSrN)rvr%r	r	r
rTs
zEnumerator.__iter__r�)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�EnumeratorList)�enumeratorsr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rO'szEnumeratorList.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S)Nzenumerators[%d])rkr�rPrQrlr	r	r
r&+szEnumeratorList.childrenccs|jpgD]
}|Vq
dSrN)r�rnr	r	r
rT1szEnumeratorList.__iter__r	)NrUr	r	r	r
r�%s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ExprList��exprsr5rMNcCs||_||_dSrN�r�r5�rr�r5r	r	r
rO9szExprList.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S�Nz	exprs[%d]�rkr�rPrQrlr	r	r
r&=szExprList.childrenccs|jpgD]
}|Vq
dSrN�r�rnr	r	r
rTCszExprList.__iter__r	)NrUr	r	r	r
r�7s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FileAST)�extr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rOKszFileAST.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S)Nzext[%d])rkr�rPrQrlr	r	r
r&OszFileAST.childrenccs|jpgD]
}|Vq
dSrN)r�rnr	r	r
rTUszFileAST.__iter__r	)NrUr	r	r	r
r�Is

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�For)rtr��nextr�r5rMNcCs"||_||_||_||_||_dSrN)rtr�r�r�r5)rrtr�r�r�r5r	r	r
rO]s
zFor.__init__cCstg}|jdur|�d|jf�|jdur8|�d|jf�|jdurR|�d|jf�|jdurl|�d|jf�t|�S)Nrtr�r�r�)rtrPr�r�r�rQrRr	r	r
r&dszFor.childrenccsL|jdur|jV|jdur$|jV|jdur6|jV|jdurH|jVdSrN)rtr�r�r�r%r	r	r
rTls



zFor.__iter__r	)NrUr	r	r	r
r�[s


r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncCall)r#�argsr5rMNcCs||_||_||_dSrN)r#r�r5)rr#r�r5r	r	r
rOzszFuncCall.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr#r�)r#rPr�rQrRr	r	r
r&szFuncCall.childrenccs(|jdur|jV|jdur$|jVdSrN)r#r�r%r	r	r
rT�s

zFuncCall.__iter__r	)NrUr	r	r	r
r�xs

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncDecl)r�rJr5rMNcCs||_||_||_dSrN)r�rJr5)rr�rJr5r	r	r
rO�szFuncDecl.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr�rJ)r�rPrJrQrRr	r	r
r&�szFuncDecl.childrenccs(|jdur|jV|jdur$|jVdSrN)r�rJr%r	r	r
rT�s

zFuncDecl.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncDef)�decl�param_decls�bodyr5rMNcCs||_||_||_||_dSrN)r�r�r�r5)rr�r�r�r5r	r	r
rO�szFuncDef.__init__cCsjg}|jdur|�d|jf�|jdur8|�d|jf�t|jpBg�D]\}}|�d||f�qFt|�S)Nr�r�zparam_decls[%d])r�rPr�rkr�rQrlr	r	r
r&�szFuncDef.childrenccs>|jdur|jV|jdur$|jV|jp,gD]
}|Vq.dSrN)r�r�r�rnr	r	r
rT�s

zFuncDef.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Goto�r#r5rMNcCs||_||_dSrN�r#r5�rr#r5r	r	r
rO�sz
Goto.__init__cCsg}t|�SrNrwrRr	r	r
r&�sz
Goto.childrenccsdSrNr	r%r	r	r
rT�sz
Goto.__iter__r�)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�IDr�NcCs||_||_dSrNr�r�r	r	r
rO�szID.__init__cCsg}t|�SrNrwrRr	r	r
r&�szID.childrenccsdSrNr	r%r	r	r
rT�szID.__iter__r�)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�IdentifierType)�namesr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rO�szIdentifierType.__init__cCsg}t|�SrNrwrRr	r	r
r&�szIdentifierType.childrenccsdSrNr	r%r	r	r
rT�szIdentifierType.__iter__)r�)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�If�r��iftrue�iffalser5rMNcCs||_||_||_||_dSrN�r�r�r�r5�rr�r�r�r5r	r	r
rO�szIf.__init__cCsZg}|jdur|�d|jf�|jdur8|�d|jf�|jdurR|�d|jf�t|�S�Nr�r�r��r�rPr�r�rQrRr	r	r
r&�s
zIf.childrenccs:|jdur|jV|jdur$|jV|jdur6|jVdSrN�r�r�r�r%r	r	r
rT�s


zIf.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�InitListr�NcCs||_||_dSrNr�r�r	r	r
rOszInitList.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�Sr�r�rlr	r	r
r&szInitList.childrenccs|jpgD]
}|Vq
dSrNr�rnr	r	r
rTszInitList.__iter__r	)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Label)r#r�r5rMNcCs||_||_||_dSrN)r#r�r5)rr#r�r5r	r	r
rOszLabel.__init__cCs&g}|jdur|�d|jf�t|�S)Nr�)r�rPrQrRr	r	r
r&szLabel.childrenccs|jdur|jVdSrN)r�r%r	r	r
rT#s
zLabel.__iter__r�)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�NamedInitializer)r#rhr5rMNcCs||_||_||_dSrN)r#rhr5)rr#rhr5r	r	r
rO+szNamedInitializer.__init__cCsPg}|jdur|�d|jf�t|jp(g�D]\}}|�d||f�q,t|�S)Nrhzname[%d])rhrPrkr#rQrlr	r	r
r&0s
zNamedInitializer.childrenccs,|jdur|jV|jpgD]
}|VqdSrN)rhr#rnr	r	r
rT7s
zNamedInitializer.__iter__r	)NrUr	r	r	r
r�)s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	ParamList)�paramsr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rOAszParamList.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�S)Nz
params[%d])rkr�rPrQrlr	r	r
r&EszParamList.childrenccs|jpgD]
}|Vq
dSrN)r�rnr	r	r
rTKszParamList.__iter__r	)NrUr	r	r	r
r�?s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�PtrDecl)rzrJr5rMNcCs||_||_||_dSrN)rzrJr5)rrzrJr5r	r	r
rOSszPtrDecl.__init__cCs&g}|jdur|�d|jf�t|�S�NrJ�rJrPrQrRr	r	r
r&XszPtrDecl.childrenccs|jdur|jVdSrN�rJr%r	r	r
rT]s
zPtrDecl.__iter__)rz)NrUr	r	r	r
r�Qs

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Return)rhr5rMNcCs||_||_dSrN)rhr5)rrhr5r	r	r
rOeszReturn.__init__cCs&g}|jdur|�d|jf�t|�S�Nrh�rhrPrQrRr	r	r
r&iszReturn.childrenccs|jdur|jVdSrN�rhr%r	r	r
rTns
zReturn.__iter__r	)NrUr	r	r	r
r�cs

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�StaticAssert)r��messager5rMNcCs||_||_||_dSrN)r�r�r5)rr�r�r5r	r	r
rOvszStaticAssert.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr�r�)r�rPr�rQrRr	r	r
r&{szStaticAssert.childrenccs(|jdur|jV|jdur$|jVdSrN)r�r�r%r	r	r
rT�s

zStaticAssert.__iter__r	)NrUr	r	r	r
r�ts

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Struct�r#r�r5rMNcCs||_||_||_dSrN�r#r�r5�rr#r�r5r	r	r
rO�szStruct.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�Sr�r�rlr	r	r
r&�szStruct.childrenccs|jpgD]
}|Vq
dSrNr�rnr	r	r
rT�szStruct.__iter__r�)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	StructRef)r#rJ�fieldr5rMNcCs||_||_||_||_dSrN)r#rJr�r5)rr#rJr�r5r	r	r
rO�szStructRef.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�S)Nr#r�)r#rPr�rQrRr	r	r
r&�szStructRef.childrenccs(|jdur|jV|jdur$|jVdSrN)r#r�r%r	r	r
rT�s

zStructRef.__iter__r�)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Switchr�NcCs||_||_||_dSrNr�r�r	r	r
rO�szSwitch.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�Sr�r�rRr	r	r
r&�szSwitch.childrenccs(|jdur|jV|jdur$|jVdSrNr�r%r	r	r
rT�s

zSwitch.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	TernaryOpr�NcCs||_||_||_||_dSrNr�r�r	r	r
rO�szTernaryOp.__init__cCsZg}|jdur|�d|jf�|jdur8|�d|jf�|jdurR|�d|jf�t|�Sr�r�rRr	r	r
r&�s
zTernaryOp.childrenccs:|jdur|jV|jdur$|jV|jdur6|jVdSrNr�r%r	r	r
rT�s


zTernaryOp.__iter__r	)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�TypeDecl)�declnamerzr{rJr5rMNcCs"||_||_||_||_||_dSrN)r�rzr{rJr5)rr�rzr{rJr5r	r	r
rO�s
zTypeDecl.__init__cCs&g}|jdur|�d|jf�t|�Sr�r�rRr	r	r
r&�szTypeDecl.childrenccs|jdur|jVdSrNr�r%r	r	r
rT�s
zTypeDecl.__iter__)r�rzr{)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Typedef)r#rzr|rJr5rMNcCs"||_||_||_||_||_dSrN)r#rzr|rJr5)rr#rzr|rJr5r	r	r
rO�s
zTypedef.__init__cCs&g}|jdur|�d|jf�t|�Sr�r�rRr	r	r
r&�szTypedef.childrenccs|jdur|jVdSrNr�r%r	r	r
rTs
zTypedef.__iter__)r#rzr|)NrUr	r	r	r
r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Typename)r#rzr{rJr5rMNcCs"||_||_||_||_||_dSrN)r#rzr{rJr5)rr#rzr{rJr5r	r	r
rO
s
zTypename.__init__cCs&g}|jdur|�d|jf�t|�Sr�r�rRr	r	r
r&szTypename.childrenccs|jdur|jVdSrNr�r%r	r	r
rTs
zTypename.__iter__)r#rzr{)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�UnaryOp)rYrhr5rMNcCs||_||_||_dSrN)rYrhr5)rrYrhr5r	r	r
rOszUnaryOp.__init__cCs&g}|jdur|�d|jf�t|�Sr�r�rRr	r	r
r&#szUnaryOp.childrenccs|jdur|jVdSrNr�r%r	r	r
rT(s
zUnaryOp.__iter__r\)NrUr	r	r	r
r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Unionr�NcCs||_||_||_dSrNr�r�r	r	r
rO0szUnion.__init__cCs6g}t|jpg�D]\}}|�d||f�qt|�Sr�r�rlr	r	r
r&5szUnion.childrenccs|jpgD]
}|Vq
dSrNr�rnr	r	r
rT;szUnion.__iter__r�)NrUr	r	r	r
r�.s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Whiler�NcCs||_||_||_dSrNr�r�r	r	r
rOCszWhile.__init__cCs@g}|jdur|�d|jf�|jdur8|�d|jf�t|�Sr�r�rRr	r	r
r&HszWhile.childrenccs(|jdur|jV|jdur$|jVdSrNr�r%r	r	r
rTNs

zWhile.__iter__r	)NrUr	r	r	r
r�As

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Pragma)�stringr5rMNcCs||_||_dSrN)r�r5)rr�r5r	r	r
rOXszPragma.__init__cCsg}t|�SrNrwrRr	r	r
r&\szPragma.childrenccsdSrNr	r%r	r	r
rT`szPragma.__iter__)r�)NrUr	r	r	r
r�Vs

r�)6r<r�objectrr>rIrVrXr]r_rbrgrorqrsrurxryrr�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>sh	O: