HEX
Server: LiteSpeed
System: Linux srv146.niagahoster.com 4.18.0-553.30.1.lve.el8.x86_64 #1 SMP Tue Dec 3 01:21:19 UTC 2024 x86_64
User: kodi1989 (1633)
PHP: 8.1.34
Disabled: symlink,shell_exec,exec,popen,system,dl,passthru,escapeshellarg,escapeshellcmd,show_source,pcntl_exec
Upload Files
File: //opt/alt/python37/lib/python3.7/site-packages/pycparser/__pycache__/c_ast.cpython-37.pyc
B

��f�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)�
z
 N)�_repr�replace)�.0�e�r�@/opt/alt/python37/lib/python3.7/site-packages/pycparser/c_ast.py�	<genexpr>sz_repr.<locals>.<genexpr>z
]N)�
isinstance�list�join�repr)�objrrr	rs
rc@s8eZdZdZdd�Zdd�Zejdddddfd	d
�ZdS)�NodercCs�|jjd}d}d}xx|jdd�D]f}||7}||7}||dtt||���dddt|�t|jj��7}d	}d
dt|jj�}q$W||d7}|S)z? Generates a python representation of the current node
        �(�N����=rz
  � �,z
 �))�	__class__�__name__�	__slots__r�getattrr�len)�self�result�indent�	separator�namerrr	�__repr__"s:z
Node.__repr__cCsdS)z3 A sequence of all children that are Nodes
        Nr)rrrr	�children5sz
Node.childrenrFNc
	sd|}|r4|dk	r4|�|�jjd|d�n|�|�jjd��jr�|r~�fdd��jD�}d�d	d
�|D��}	n(�fdd��jD�}
d�dd
�|
D��}	|�|	�|r�|�d
�j�|�d�x.���D]"\}}|j||d||||d�q�WdS)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�n)rrr	�
<listcomp>XszNode.show.<locals>.<listcomp>z, css|]}d|VqdS)z%s=%sNr)r�nvrrr	r
YszNode.show.<locals>.<genexpr>csg|]}t�|��qSr)r)rr$)rrr	r%[scss|]}d|VqdS)z%sNr)r�vrrr	r
\sz (at %s)r�)�offset�	attrnames�	nodenames�	showcoord�
_my_node_name)�writerr�
attr_namesr
�coordr#�show)
r�bufr)r*r+r,r-ZleadZnvlistZattrstr�vlistZ
child_name�childr)rr	r1:s, 

z	Node.show)	r�
__module__�__qualname__rr"r#�sys�stdoutr1rrrr	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|jdkri|_|j�|jjd�}|dkrRd|jj}t|||j�}||j|jj<||�S)z Visit a node.
        NZvisit_)�
_method_cache�getrrr�
generic_visit)r�nodeZvisitor�methodrrr	�visit�s
zNodeVisitor.visitcCsx|D]}|�|�qWdS)zy Called if no explicit visitor function exists for a
            node. Implements preorder visiting of the node.
        N)r?)rr=�crrr	r<�s
zNodeVisitor.generic_visit)rr5r6�__doc__r:r?r<rrrr	r9ms r9c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	ArrayDecl)�type�dim�	dim_qualsr0�__weakref__NcCs||_||_||_||_dS)N)rCrDrEr0)rrCrDrEr0rrr	�__init__�szArrayDecl.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)NrCrD)rC�appendrD�tuple)r�nodelistrrr	r#�s

zArrayDecl.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rCrD)rrrr	�__iter__�s

zArrayDecl.__iter__)rE)N)rr5r6rrGr#rKr/rrrr	rB�s

rBc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ArrayRef)r!�	subscriptr0rFNcCs||_||_||_dS)N)r!rMr0)rr!rMr0rrr	rG�szArrayRef.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nr!rM)r!rHrMrI)rrJrrr	r#�s

zArrayRef.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)r!rM)rrrr	rK�s

zArrayRef.__iter__r)N)rr5r6rrGr#rKr/rrrr	rL�s

rLc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
Assignment)�op�lvalue�rvaluer0rFNcCs||_||_||_||_dS)N)rOrPrQr0)rrOrPrQr0rrr	rG�szAssignment.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)NrPrQ)rPrHrQrI)rrJrrr	r#�s

zAssignment.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rPrQ)rrrr	rK�s

zAssignment.__iter__)rO)N)rr5r6rrGr#rKr/rrrr	rN�s

rNc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Alignas)�	alignmentr0rFNcCs||_||_dS)N)rSr0)rrSr0rrr	rG�szAlignas.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrS)rSrHrI)rrJrrr	r#�s
zAlignas.childrenccs|jdk	r|jVdS)N)rS)rrrr	rK�s
zAlignas.__iter__r)N)rr5r6rrGr#rKr/rrrr	rR�s

rRc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�BinaryOp)rO�left�rightr0rFNcCs||_||_||_||_dS)N)rOrUrVr0)rrOrUrVr0rrr	rG�szBinaryOp.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)NrUrV)rUrHrVrI)rrJrrr	r#s

zBinaryOp.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rUrV)rrrr	rKs

zBinaryOp.__iter__)rO)N)rr5r6rrGr#rKr/rrrr	rT�s

rTc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Break)r0rFNcCs
||_dS)N)r0)rr0rrr	rGszBreak.__init__cCsdS)Nrr)rrrr	r#szBreak.childrenccsdS)Nr)rrrr	rKszBreak.__iter__r)N)rr5r6rrGr#rKr/rrrr	rWs

rWc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Case)�expr�stmtsr0rFNcCs||_||_||_dS)N)rYrZr0)rrYrZr0rrr	rGsz
Case.__init__cCsTg}|jdk	r|�d|jf�x,t|jp*g�D]\}}|�d||f�q.Wt|�S)NrYz	stmts[%d])rYrH�	enumeraterZrI)rrJ�ir4rrr	r#$s
z
Case.childrenccs0|jdk	r|jVx|jpgD]
}|VqWdS)N)rYrZ)rr4rrr	rK+s
z
Case.__iter__r)N)rr5r6rrGr#rKr/rrrr	rXs

rXc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Cast)�to_typerYr0rFNcCs||_||_||_dS)N)r^rYr0)rr^rYr0rrr	rG5sz
Cast.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nr^rY)r^rHrYrI)rrJrrr	r#:s

z
Cast.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)r^rY)rrrr	rK@s

z
Cast.__iter__r)N)rr5r6rrGr#rKr/rrrr	r]3s

r]c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Compound)�block_itemsr0rFNcCs||_||_dS)N)r`r0)rr`r0rrr	rGJszCompound.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nzblock_items[%d])r[r`rHrI)rrJr\r4rrr	r#NszCompound.childrenccsx|jp
gD]
}|VqWdS)N)r`)rr4rrr	rKTszCompound.__iter__r)N)rr5r6rrGr#rKr/rrrr	r_Hs

r_c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�CompoundLiteral)rC�initr0rFNcCs||_||_||_dS)N)rCrbr0)rrCrbr0rrr	rG\szCompoundLiteral.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)NrCrb)rCrHrbrI)rrJrrr	r#as

zCompoundLiteral.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rCrb)rrrr	rKgs

zCompoundLiteral.__iter__r)N)rr5r6rrGr#rKr/rrrr	raZs

rac@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Constant)rC�valuer0rFNcCs||_||_||_dS)N)rCrdr0)rrCrdr0rrr	rGqszConstant.__init__cCsg}t|�S)N)rI)rrJrrr	r#vszConstant.childrenccsdS)Nr)rrrr	rKzszConstant.__iter__)rCrd)N)rr5r6rrGr#rKr/rrrr	rcos

rcc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Continue)r0rFNcCs
||_dS)N)r0)rr0rrr	rG�szContinue.__init__cCsdS)Nrr)rrrr	r#�szContinue.childrenccsdS)Nr)rrrr	rK�szContinue.__iter__r)N)rr5r6rrGr#rKr/rrrr	re�s

rec@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Decl)
r!�quals�align�storage�funcspecrCrb�bitsizer0rFNc

Cs:||_||_||_||_||_||_||_||_|	|_dS)N)	r!rgrhrirjrCrbrkr0)
rr!rgrhrirjrCrbrkr0rrr	rG�sz
Decl.__init__cCsZg}|jdk	r|�d|jf�|jdk	r8|�d|jf�|jdk	rR|�d|jf�t|�S)NrCrbrk)rCrHrbrkrI)rrJrrr	r#�s


z
Decl.childrenccs:|jdk	r|jV|jdk	r$|jV|jdk	r6|jVdS)N)rCrbrk)rrrr	rK�s


z
Decl.__iter__)r!rgrhrirj)N)rr5r6rrGr#rKr/rrrr	rf�s

rfc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�DeclList)�declsr0rFNcCs||_||_dS)N)rmr0)rrmr0rrr	rG�szDeclList.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	decls[%d])r[rmrHrI)rrJr\r4rrr	r#�szDeclList.childrenccsx|jp
gD]
}|VqWdS)N)rm)rr4rrr	rK�szDeclList.__iter__r)N)rr5r6rrGr#rKr/rrrr	rl�s

rlc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Default)rZr0rFNcCs||_||_dS)N)rZr0)rrZr0rrr	rG�szDefault.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	stmts[%d])r[rZrHrI)rrJr\r4rrr	r#�szDefault.childrenccsx|jp
gD]
}|VqWdS)N)rZ)rr4rrr	rK�szDefault.__iter__r)N)rr5r6rrGr#rKr/rrrr	rn�s

rnc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�DoWhile)�cond�stmtr0rFNcCs||_||_||_dS)N)rprqr0)rrprqr0rrr	rG�szDoWhile.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nrprq)rprHrqrI)rrJrrr	r#�s

zDoWhile.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rprq)rrrr	rK�s

zDoWhile.__iter__r)N)rr5r6rrGr#rKr/rrrr	ro�s

roc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
EllipsisParam)r0rFNcCs
||_dS)N)r0)rr0rrr	rG�szEllipsisParam.__init__cCsdS)Nrr)rrrr	r#�szEllipsisParam.childrenccsdS)Nr)rrrr	rK�szEllipsisParam.__iter__r)N)rr5r6rrGr#rKr/rrrr	rr�s

rrc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�EmptyStatement)r0rFNcCs
||_dS)N)r0)rr0rrr	rG�szEmptyStatement.__init__cCsdS)Nrr)rrrr	r#�szEmptyStatement.childrenccsdS)Nr)rrrr	rK�szEmptyStatement.__iter__r)N)rr5r6rrGr#rKr/rrrr	rs�s

rsc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Enum)r!�valuesr0rFNcCs||_||_||_dS)N)r!rur0)rr!rur0rrr	rGsz
Enum.__init__cCs&g}|jdk	r|�d|jf�t|�S)Nru)rurHrI)rrJrrr	r#s
z
Enum.childrenccs|jdk	r|jVdS)N)ru)rrrr	rK
s
z
Enum.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	rts

rtc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�
Enumerator)r!rdr0rFNcCs||_||_||_dS)N)r!rdr0)rr!rdr0rrr	rGszEnumerator.__init__cCs&g}|jdk	r|�d|jf�t|�S)Nrd)rdrHrI)rrJrrr	r#s
zEnumerator.childrenccs|jdk	r|jVdS)N)rd)rrrr	rKs
zEnumerator.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	rvs

rvc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�EnumeratorList)�enumeratorsr0rFNcCs||_||_dS)N)rxr0)rrxr0rrr	rG'szEnumeratorList.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nzenumerators[%d])r[rxrHrI)rrJr\r4rrr	r#+szEnumeratorList.childrenccsx|jp
gD]
}|VqWdS)N)rx)rr4rrr	rK1szEnumeratorList.__iter__r)N)rr5r6rrGr#rKr/rrrr	rw%s

rwc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ExprList)�exprsr0rFNcCs||_||_dS)N)rzr0)rrzr0rrr	rG9szExprList.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	exprs[%d])r[rzrHrI)rrJr\r4rrr	r#=szExprList.childrenccsx|jp
gD]
}|VqWdS)N)rz)rr4rrr	rKCszExprList.__iter__r)N)rr5r6rrGr#rKr/rrrr	ry7s

ryc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FileAST)�extr0rFNcCs||_||_dS)N)r|r0)rr|r0rrr	rGKszFileAST.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nzext[%d])r[r|rHrI)rrJr\r4rrr	r#OszFileAST.childrenccsx|jp
gD]
}|VqWdS)N)r|)rr4rrr	rKUszFileAST.__iter__r)N)rr5r6rrGr#rKr/rrrr	r{Is

r{c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�For)rbrp�nextrqr0rFNcCs"||_||_||_||_||_dS)N)rbrpr~rqr0)rrbrpr~rqr0rrr	rG]s
zFor.__init__cCstg}|jdk	r|�d|jf�|jdk	r8|�d|jf�|jdk	rR|�d|jf�|jdk	rl|�d|jf�t|�S)Nrbrpr~rq)rbrHrpr~rqrI)rrJrrr	r#ds



zFor.childrenccsL|jdk	r|jV|jdk	r$|jV|jdk	r6|jV|jdk	rH|jVdS)N)rbrpr~rq)rrrr	rKls



zFor.__iter__r)N)rr5r6rrGr#rKr/rrrr	r}[s


r}c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncCall)r!�argsr0rFNcCs||_||_||_dS)N)r!r�r0)rr!r�r0rrr	rGzszFuncCall.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nr!r�)r!rHr�rI)rrJrrr	r#s

zFuncCall.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)r!r�)rrrr	rK�s

zFuncCall.__iter__r)N)rr5r6rrGr#rKr/rrrr	rxs

rc@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncDecl)r�rCr0rFNcCs||_||_||_dS)N)r�rCr0)rr�rCr0rrr	rG�szFuncDecl.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nr�rC)r�rHrCrI)rrJrrr	r#�s

zFuncDecl.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)r�rC)rrrr	rK�s

zFuncDecl.__iter__r)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�FuncDef)�decl�param_decls�bodyr0rFNcCs||_||_||_||_dS)N)r�r�r�r0)rr�r�r�r0rrr	rG�szFuncDef.__init__cCsng}|jdk	r|�d|jf�|jdk	r8|�d|jf�x,t|jpDg�D]\}}|�d||f�qHWt|�S)Nr�r�zparam_decls[%d])r�rHr�r[r�rI)rrJr\r4rrr	r#�s

zFuncDef.childrenccsB|jdk	r|jV|jdk	r$|jVx|jp.gD]
}|Vq0WdS)N)r�r�r�)rr4rrr	rK�s

zFuncDef.__iter__r)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Goto)r!r0rFNcCs||_||_dS)N)r!r0)rr!r0rrr	rG�sz
Goto.__init__cCsg}t|�S)N)rI)rrJrrr	r#�sz
Goto.childrenccsdS)Nr)rrrr	rK�sz
Goto.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�ID)r!r0rFNcCs||_||_dS)N)r!r0)rr!r0rrr	rG�szID.__init__cCsg}t|�S)N)rI)rrJrrr	r#�szID.childrenccsdS)Nr)rrrr	rK�szID.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�IdentifierType)�namesr0rFNcCs||_||_dS)N)r�r0)rr�r0rrr	rG�szIdentifierType.__init__cCsg}t|�S)N)rI)rrJrrr	r#�szIdentifierType.childrenccsdS)Nr)rrrr	rK�szIdentifierType.__iter__)r�)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�If)rp�iftrue�iffalser0rFNcCs||_||_||_||_dS)N)rpr�r�r0)rrpr�r�r0rrr	rG�szIf.__init__cCsZg}|jdk	r|�d|jf�|jdk	r8|�d|jf�|jdk	rR|�d|jf�t|�S)Nrpr�r�)rprHr�r�rI)rrJrrr	r#�s


zIf.childrenccs:|jdk	r|jV|jdk	r$|jV|jdk	r6|jVdS)N)rpr�r�)rrrr	rK�s


zIf.__iter__r)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�InitList)rzr0rFNcCs||_||_dS)N)rzr0)rrzr0rrr	rGszInitList.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	exprs[%d])r[rzrHrI)rrJr\r4rrr	r#szInitList.childrenccsx|jp
gD]
}|VqWdS)N)rz)rr4rrr	rKszInitList.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Label)r!rqr0rFNcCs||_||_||_dS)N)r!rqr0)rr!rqr0rrr	rGszLabel.__init__cCs&g}|jdk	r|�d|jf�t|�S)Nrq)rqrHrI)rrJrrr	r#s
zLabel.childrenccs|jdk	r|jVdS)N)rq)rrrr	rK#s
zLabel.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�NamedInitializer)r!rYr0rFNcCs||_||_||_dS)N)r!rYr0)rr!rYr0rrr	rG+szNamedInitializer.__init__cCsTg}|jdk	r|�d|jf�x,t|jp*g�D]\}}|�d||f�q.Wt|�S)NrYzname[%d])rYrHr[r!rI)rrJr\r4rrr	r#0s
zNamedInitializer.childrenccs0|jdk	r|jVx|jpgD]
}|VqWdS)N)rYr!)rr4rrr	rK7s
zNamedInitializer.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�)s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	ParamList)�paramsr0rFNcCs||_||_dS)N)r�r0)rr�r0rrr	rGAszParamList.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz
params[%d])r[r�rHrI)rrJr\r4rrr	r#EszParamList.childrenccsx|jp
gD]
}|VqWdS)N)r�)rr4rrr	rKKszParamList.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�?s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�PtrDecl)rgrCr0rFNcCs||_||_||_dS)N)rgrCr0)rrgrCr0rrr	rGSszPtrDecl.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrC)rCrHrI)rrJrrr	r#Xs
zPtrDecl.childrenccs|jdk	r|jVdS)N)rC)rrrr	rK]s
zPtrDecl.__iter__)rg)N)rr5r6rrGr#rKr/rrrr	r�Qs

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Return)rYr0rFNcCs||_||_dS)N)rYr0)rrYr0rrr	rGeszReturn.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrY)rYrHrI)rrJrrr	r#is
zReturn.childrenccs|jdk	r|jVdS)N)rY)rrrr	rKns
zReturn.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�cs

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�StaticAssert)rp�messager0rFNcCs||_||_||_dS)N)rpr�r0)rrpr�r0rrr	rGvszStaticAssert.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nrpr�)rprHr�rI)rrJrrr	r#{s

zStaticAssert.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rpr�)rrrr	rK�s

zStaticAssert.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�ts

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Struct)r!rmr0rFNcCs||_||_||_dS)N)r!rmr0)rr!rmr0rrr	rG�szStruct.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	decls[%d])r[rmrHrI)rrJr\r4rrr	r#�szStruct.childrenccsx|jp
gD]
}|VqWdS)N)rm)rr4rrr	rK�szStruct.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	StructRef)r!rC�fieldr0rFNcCs||_||_||_||_dS)N)r!rCr�r0)rr!rCr�r0rrr	rG�szStructRef.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nr!r�)r!rHr�rI)rrJrrr	r#�s

zStructRef.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)r!r�)rrrr	rK�s

zStructRef.__iter__)rC)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Switch)rprqr0rFNcCs||_||_||_dS)N)rprqr0)rrprqr0rrr	rG�szSwitch.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nrprq)rprHrqrI)rrJrrr	r#�s

zSwitch.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rprq)rrrr	rK�s

zSwitch.__iter__r)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�	TernaryOp)rpr�r�r0rFNcCs||_||_||_||_dS)N)rpr�r�r0)rrpr�r�r0rrr	rG�szTernaryOp.__init__cCsZg}|jdk	r|�d|jf�|jdk	r8|�d|jf�|jdk	rR|�d|jf�t|�S)Nrpr�r�)rprHr�r�rI)rrJrrr	r#�s


zTernaryOp.childrenccs:|jdk	r|jV|jdk	r$|jV|jdk	r6|jVdS)N)rpr�r�)rrrr	rK�s


zTernaryOp.__iter__r)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�TypeDecl)�declnamergrhrCr0rFNcCs"||_||_||_||_||_dS)N)r�rgrhrCr0)rr�rgrhrCr0rrr	rG�s
zTypeDecl.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrC)rCrHrI)rrJrrr	r#�s
zTypeDecl.childrenccs|jdk	r|jVdS)N)rC)rrrr	rK�s
zTypeDecl.__iter__)r�rgrh)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Typedef)r!rgrirCr0rFNcCs"||_||_||_||_||_dS)N)r!rgrirCr0)rr!rgrirCr0rrr	rG�s
zTypedef.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrC)rCrHrI)rrJrrr	r#�s
zTypedef.childrenccs|jdk	r|jVdS)N)rC)rrrr	rKs
zTypedef.__iter__)r!rgri)N)rr5r6rrGr#rKr/rrrr	r��s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Typename)r!rgrhrCr0rFNcCs"||_||_||_||_||_dS)N)r!rgrhrCr0)rr!rgrhrCr0rrr	rG
s
zTypename.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrC)rCrHrI)rrJrrr	r#s
zTypename.childrenccs|jdk	r|jVdS)N)rC)rrrr	rKs
zTypename.__iter__)r!rgrh)N)rr5r6rrGr#rKr/rrrr	r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�UnaryOp)rOrYr0rFNcCs||_||_||_dS)N)rOrYr0)rrOrYr0rrr	rGszUnaryOp.__init__cCs&g}|jdk	r|�d|jf�t|�S)NrY)rYrHrI)rrJrrr	r##s
zUnaryOp.childrenccs|jdk	r|jVdS)N)rY)rrrr	rK(s
zUnaryOp.__iter__)rO)N)rr5r6rrGr#rKr/rrrr	r�s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Union)r!rmr0rFNcCs||_||_||_dS)N)r!rmr0)rr!rmr0rrr	rG0szUnion.__init__cCs:g}x,t|jpg�D]\}}|�d||f�qWt|�S)Nz	decls[%d])r[rmrHrI)rrJr\r4rrr	r#5szUnion.childrenccsx|jp
gD]
}|VqWdS)N)rm)rr4rrr	rK;szUnion.__iter__)r!)N)rr5r6rrGr#rKr/rrrr	r�.s

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�While)rprqr0rFNcCs||_||_||_dS)N)rprqr0)rrprqr0rrr	rGCszWhile.__init__cCs@g}|jdk	r|�d|jf�|jdk	r8|�d|jf�t|�S)Nrprq)rprHrqrI)rrJrrr	r#Hs

zWhile.childrenccs(|jdk	r|jV|jdk	r$|jVdS)N)rprq)rrrr	rKNs

zWhile.__iter__r)N)rr5r6rrGr#rKr/rrrr	r�As

r�c@s.eZdZdZd
dd�Zdd�Zdd�Zd	ZdS)�Pragma)�stringr0rFNcCs||_||_dS)N)r�r0)rr�r0rrr	rGXszPragma.__init__cCsg}t|�S)N)rI)rrJrrr	r#\szPragma.childrenccsdS)Nr)rrrr	rK`szPragma.__iter__)r�)N)rr5r6rrGr#rKr/rrrr	r�Vs

r�)6r7r�objectrr9rBrLrNrRrTrWrXr]r_rarcrerfrlrnrorrrsrtrvrwryr{r}rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrr	�<module>sh	O: