Prv8 Shell
Server : Apache
System : Linux server.mata-lashes.com 3.10.0-1160.90.1.el7.x86_64 #1 SMP Thu May 4 15:21:22 UTC 2023 x86_64
User : matalashes ( 1004)
PHP Version : 8.1.29
Disable Function : NONE
Directory :  /usr/local/lib64/python3.6/site-packages/jinja2/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/local/lib64/python3.6/site-packages/jinja2/__pycache__/idtracking.cpython-36.pyc
3

E�Kd�)�@s�ddlZddlmZddlmZdZdZdZdZ	dej
ejejd	d	d
�dd�Z
dejejd	d	d
�dd�ZGdd	�d	�ZGdd�de�ZGdd�de�ZdS)�N�)�nodes)�NodeVisitor�param�resolve�aliasZ	undefined�Symbols)r�parent_symbols�returncCs.t|d�}t|�}x|D]}|j|�qW|S)N)�parent)r�FrameSymbolVisitor�visit)rr	�sym�visitor�node�r�3/tmp/pip-build-8nxjc3nm/jinja2/jinja2/idtracking.py�find_symbolss


r)rr	r
cCst|d�}|j|�|S)N)r)r�analyze_node)rr	rrrr�symbols_for_nodes

rc@s*eZdZd#ejdejedd�dd�Zejej	dd�dd�Z
d$eejejeejefed�d	d
�Z
eejej	d�dd
�Zeejed�dd�Zeed�dd�Zdd�dd�Zedd�dd�Zeed�dd�Zedd�dd�Zejddd�dd�Zejeefd�dd �Zejed�d!d"�ZdS)%rN)r�levelr
cCsD|dkr |dkrd}n
|jd}||_||_i|_i|_t�|_dS)Nrr)rr�refs�loads�set�stores)�selfrrrrr�__init__s
zSymbols.__init__)r�kwargsr
cKst|�}|j|f|�dS)N)�RootVisitorr
)rrrrrrrr.szSymbols.analyze_node)�name�loadr
cCs2d|j�d|��}||j|<|dk	r.||j|<|S)NZl_�_)rrr)rrr �identrrr�_define_ref2s


zSymbols._define_ref)�targetr
cCs.||jkr|j|S|jdk	r*|jj|�SdS)N)rr�	find_load)rr$rrrr%;s



zSymbols.find_load)rr
cCs.||jkr|j|S|jdk	r*|jj|�SdS)N)rr�find_ref)rrrrrr&Ds



zSymbols.find_refcCs&|j|�}|dkr"td|�d���|S)NzFTried to resolve a name to a reference that was unknown to the frame (�))r&�AssertionError)rr�rvrrr�refMs

zSymbols.ref)r
cCsJtjttj|j��}|jj|j�|jj	�|_|j
j	�|_
|jj	�|_|S)N)�t�castr�object�__new__�	__class__�__dict__�updater�copyrr)rr)rrrr2VszSymbols.copycCs`|jj|�||jkr\|jdk	rJ|jj|�}|dk	rJ|j|t|fd�dS|j|tdfd�dS)N)r )r�addrrr&r#�VAR_LOAD_ALIAS�VAR_LOAD_UNDEFINED)rrZ	outer_refrrr�store^s

z
Symbols.storecCs|jj|�|j|tdfd�S)N)r )rr3r#�VAR_LOAD_PARAMETER)rrrrr�declare_parameterpszSymbols.declare_parametercCs$|j|�dkr |j|t|fd�dS)N)r )r&r#�VAR_LOAD_RESOLVE)rrrrrr tszSymbols.load)�branch_symbolsr
c	Cs�i}x<|D]4}x.|jD]$}||jkr&q|j|d�d||<qWq
Wx6|D].}|jj|j�|jj|j�|jj|j�qHWxx|j�D]l\}}|t|�kr�q�|j|�}|dk	s�td��|j	dk	r�|j	j|�}|dk	r�t
|f|j|<q�t|f|j|<q�WdS)Nrrzshould not happen)r�getrr1r�items�lenr&r(rr4r9)	rr:r�branchr$rrZbranch_countZouter_targetrrr�
branch_updatexs*




zSymbols.branch_updatecCsJi}|}x<|dk	rDx(t|j�D]}||kr|j|�||<qW|j}q
W|S)N)�sortedrr&r)rr)rrrrr�dump_stores�s

zSymbols.dump_storescCsPt�}|}x@|dk	rJx,|jj�D]\}\}}|tkr |j|�q W|j}qW|S)N)rrr<r7r3r)rr)rr$Zinstrr!rrr�dump_param_targets�s

zSymbols.dump_param_targets)NN)N)�__name__�
__module__�__qualname__r+�Optional�intrr�Node�Anyr�strZTupler#r%r&r*r2r6r8r �Sequencer?�DictrA�SetrBrrrrrs
			
c@s�eZdZddd�dd�Zejejdd�dd�ZeZ	eZ
eZeZeZ
eZeZejejdd�d	d
�Zejejdd�dd�Zejejdd�d
d�Zdejeejdd�dd�Zejejdd�dd�Zejejejdd�dd�ZdS)rrN)�symbolsr
cCst|�|_dS)N)r�sym_visitor)rrNrrrr�szRootVisitor.__init__)rrr
cKs"x|j�D]}|jj|�q
WdS)N)�iter_child_nodesrOr
)rrr�childrrr�
_simple_visit�szRootVisitor._simple_visitcKs x|jD]}|jj|�qWdS)N)�bodyrOr
)rrrrQrrr�visit_AssignBlock�szRootVisitor.visit_AssignBlockcKs&x |jdd�D]}|jj|�qWdS)N�call)�exclude)rU)rPrOr
)rrrrQrrr�visit_CallBlock�szRootVisitor.visit_CallBlockcKs x|jD]}|jj|�qWdS)N)rSrOr
)rrrrQrrr�visit_OverlayScope�szRootVisitor.visit_OverlayScoperS)r�
for_branchrr
cKs�|dkr"|jj|jdd�|j}nN|dkr2|j}n>|dkrh|jj|jdd�|jdk	rd|jj|j�dStd��|r�x|D]}|jj|�qzWdS)NrST)�store_as_param�else�testzUnknown for branch)rOr
r$rS�else_r\�RuntimeError)rrrYrr>�itemrrr�	visit_For�s

zRootVisitor.visit_ForcKs<x|jD]}|jj|�qWx|jD]}|jj|�q$WdS)N)�targetsrOr
rS)rrrr$rQrrr�
visit_With�szRootVisitor.visit_With)r�argsrr
cOstdt|�j����dS)NzCannot find symbols for )�NotImplementedError�typerC)rrrcrrrr�
generic_visit�szRootVisitor.generic_visit)rS)rCrDrErrrHr+rIrRZvisit_Template�visit_Block�visit_Macro�visit_FilterBlock�visit_Scope�visit_IfZvisit_ScopedEvalContextModifier�AssignBlockrT�	CallBlockrW�OverlayScoperX�ForrJr`�Withrbrfrrrrr�s rc@sneZdZdZddd�dd�Zd(ejeej	dd�d	d
�Z
ejej	dd�dd
�Zej
ej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�dd�Zejej	dd�d d!�Z ej!ej	dd�d"d#�Z"ej#ej	dd�d$d%�Z$ej%ej	dd�d&d'�Z&dS))rzA visitor for `Frame.inspect`.rN)rNr
cCs
||_dS)N)rN)rrNrrrr�szFrameSymbolVisitor.__init__F)rrZrr
cKsT|s|jdkr|jj|j�n2|jdkr8|jj|j�n|jdkrP|jj|j�dS)z2All assignments to names go through this function.rr6r N)�ctxrNr8rr6r )rrrZrrrr�
visit_Name�s

zFrameSymbolVisitor.visit_Name)rrr
cKs|jj|j�dS)N)rNr r)rrrrrr�visit_NSRef�szFrameSymbolVisitor.visit_NSRefcsn�j|jf���j�tjtjdd����fdd�}||j�}||j�}||j	pTf�}�jj
|||g�dS)Nr)rr
cs4�j��_}x|D]}�j|f��qW��_|S)N)r2rNr
)rr)Zsubnode)r�original_symbolsrrr�inner_visits

z0FrameSymbolVisitor.visit_If.<locals>.inner_visit)r
r\rNr+�IterablerrHrSZelif_r]r?)rrrruZbody_symbolsZelif_symbolsZelse_symbolsr)rrtrrrk�s 	

zFrameSymbolVisitor.visit_IfcKs|jj|j�dS)N)rNr6r)rrrrrrrhszFrameSymbolVisitor.visit_MacrocKs |j|f|�|jj|j�dS)N)rfrNr6r$)rrrrrr�visit_ImportszFrameSymbolVisitor.visit_ImportcKsJ|j|f|�x6|jD],}t|t�r6|jj|d�q|jj|�qWdS)Nr)rf�names�
isinstance�tuplerNr6)rrrrrrr�visit_FromImports

z#FrameSymbolVisitor.visit_FromImportcKs$|j|jf|�|j|jf|�dS)z'Visit assignments in the correct order.N)r
rr$)rrrrrr�visit_AssignszFrameSymbolVisitor.visit_AssigncKs|j|jf|�dS)zqVisiting stops at for blocks.  However the block sequence
        is visited as part of the outer scope.
        N)r
�iter)rrrrrrr`#szFrameSymbolVisitor.visit_ForcKs|j|jf|�dS)N)r
rU)rrrrrrrW)sz"FrameSymbolVisitor.visit_CallBlockcKs|j|jf|�dS)N)r
�filter)rrrrrrri,sz$FrameSymbolVisitor.visit_FilterBlockcKsx|jD]}|j|�qWdS)N)�valuesr
)rrrr$rrrrb/szFrameSymbolVisitor.visit_WithcKs|j|jf|�dS)zStop visiting at block assigns.N)r
r$)rrrrrrrT3sz$FrameSymbolVisitor.visit_AssignBlockcKsdS)zStop visiting at scopes.Nr)rrrrrrrj7szFrameSymbolVisitor.visit_ScopecKsdS)zStop visiting at blocks.Nr)rrrrrrrg:szFrameSymbolVisitor.visit_BlockcKsdS)z!Do not visit into overlay scopes.Nr)rrrrrrrX=sz%FrameSymbolVisitor.visit_OverlayScope)F)'rCrDrE�__doc__rr�Name�boolr+rIrrZNSRefrsZIfrkZMacrorhZImportrwZ
FromImportr{ZAssignr|ror`rmrWZFilterBlockrirprbrlrTZScoperjZBlockrgrnrXrrrrr�s$		r)N)N)Ztypingr+�rrrr7r9r4r5rvrHrFrrrrrrrrr�<module>s	:

haha - 2025