HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //lib/python3.6/site-packages/jmespath/__pycache__/visitor.cpython-36.opt-1.pyc
3

g�VF$�@sxddlZddlmZdd�Zdd�ZGdd�de�ZGd	d
�d
e�ZGdd�de�ZGd
d�de�Z	Gdd�de�Z
dS)�N)�	functionscCst||�rdS||kSdS)NF)�_is_special_integer_case)�x�y�r�/usr/lib/python3.6/visitor.py�_equalss
rcCsD|dks|dkr |dkp|dkS|dks0|dkr@|dkp>|dkSdS)Nr�TFr)rrrrrr
src@seZdZdZdd�ZdS)�Optionsz8Options to control how a JMESPath function is evaluated.cCs
||_dS)N)�dict_cls)�selfrrrr�__init__&s	zOptions.__init__N)�__name__�
__module__�__qualname__�__doc__r
rrrrr
$sr
c@seZdZdd�ZdS)�_ExpressioncCs
||_dS)N)�
expression)rrrrrr
3sz_Expression.__init__N)rrrr
rrrrr2src@s$eZdZdd�Zdd�Zdd�ZdS)�VisitorcCs
i|_dS)N)�
_method_cache)rrrrr
8szVisitor.__init__cOsL|d}|jj|�}|dkr<t|d|d|j�}||j|<||f|�|�S)N�typezvisit_%s)r�get�getattr�
default_visit)r�node�args�kwargsZ	node_type�methodrrr�visit;s
z
Visitor.visitcOstd��dS)Nr)�NotImplementedError)rrrrrrrrDszVisitor.default_visitN)rrrr
rrrrrrr7s	rcseZdZejdd�ejejeejejd�Z	e
Zd9�fdd�	Zdd�Z
d	d
�Zdd�Zd
d�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd �Zd!d"�Zd#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zd-d.�Z d/d0�Z!d1d2�Z"d3d4�Z#d5d6�Z$d7d8�Z%�Z&S):�TreeInterpretercCst||�S)N)r)rrrrr�<lambda>KszTreeInterpreter.<lambda>)�le�ne�ltZlte�eq�gtZgteNcsNtt|�j�||_|j|_|dk	r8|jdk	r8|jj|_tj�|_	||j	_
dS)N)�superr r
Z_options�MAP_TYPE�	_dict_clsrrZRuntimeFunctions�
_functionsZinterpreter)rZoptions)�	__class__rrr
Ts

zTreeInterpreter.__init__cOst|d��dS)Nr)r)rrrrrrrr`szTreeInterpreter.default_visitcCs&|}x|dD]}|j||�}qW|S)N�children)r)rr�value�resultrrr�visit_subexpressioncsz#TreeInterpreter.visit_subexpressioncCs(y|j|d�Stk
r"dSXdS)Nr-)r�AttributeError)rrr-rrr�visit_fieldiszTreeInterpreter.visit_fieldcCs8|j|d}||j|dd|�|j|dd|��S)Nr-r,rr	)�COMPARATOR_FUNCr)rrr-Zcomparator_funcrrr�visit_comparatorosz TreeInterpreter.visit_comparatorcCs|S)Nr)rrr-rrr�
visit_currentvszTreeInterpreter.visit_currentcCst|dd�S)Nr,r)r)rrr-rrr�visit_exprefyszTreeInterpreter.visit_exprefcCs>g}x&|dD]}|j||�}|j|�qW|jj|d|�S)Nr,r-)r�appendr*Z
call_function)rrr-Z
resolved_args�child�currentrrr�visit_function_expression|s
z)TreeInterpreter.visit_function_expressioncCs||j|dd|�}t|t�s"dS|dd}g}xD|D]<}|j|j||��r8|j|dd|�}|dk	r8|j|�q8W|S)Nr,r�r	)r�
isinstance�list�_is_truer6)rrr-�baseZcomparator_node�	collected�elementr8rrr�visit_filter_projection�s

z'TreeInterpreter.visit_filter_projectioncCsX|j|dd|�}t|t�s"dSg}x,|D]$}t|t�rF|j|�q,|j|�q,W|S)Nr,r)rr;r<�extendr6)rrr-r>Zmerged_listr@rrr�
visit_flatten�s


zTreeInterpreter.visit_flattencCs|S)Nr)rrr-rrr�visit_identity�szTreeInterpreter.visit_identitycCs4t|t�sdSy||dStk
r.dSXdS)Nr-)r;r<�
IndexError)rrr-rrr�visit_index�s
zTreeInterpreter.visit_indexcCs&|}x|dD]}|j||�}qW|S)Nr,)r)rrr-r.rrr�visit_index_expression�sz&TreeInterpreter.visit_index_expressioncCs"t|t�sdSt|d�}||S)Nr,)r;r<�slice)rrr-�srrr�visit_slice�s
zTreeInterpreter.visit_slicecCs|j|dd|�S)Nr,r)r)rrr-rrr�visit_key_val_pair�sz"TreeInterpreter.visit_key_val_paircCs|dS)Nr-r)rrr-rrr�
visit_literal�szTreeInterpreter.visit_literalcCs>|dkrdS|j�}x$|dD]}|j||�||d<qW|S)Nr,r-)r)r)rrr-r?r7rrr�visit_multi_select_dict�sz'TreeInterpreter.visit_multi_select_dictcCs8|dkrdSg}x"|dD]}|j|j||��qW|S)Nr,)r6r)rrr-r?r7rrr�visit_multi_select_list�sz'TreeInterpreter.visit_multi_select_listcCs6|j|dd|�}|j|�r2|j|dd|�}|S)Nr,rr	)r�	_is_false)rrr-�matchedrrr�visit_or_expression�s
z#TreeInterpreter.visit_or_expressioncCs6|j|dd|�}|j|�r"|S|j|dd|�S)Nr,rr	)rrO)rrr-rPrrr�visit_and_expression�s
z$TreeInterpreter.visit_and_expressioncCs&|j|dd|�}|dkr dS|S)Nr,rF)r)rrr-Zoriginal_resultrrr�visit_not_expression�sz$TreeInterpreter.visit_not_expressioncCs&|}x|dD]}|j||�}qW|S)Nr,)r)rrr-r.rrr�
visit_pipe�szTreeInterpreter.visit_pipecCs^|j|dd|�}t|t�s"dSg}x2|D]*}|j|dd|�}|dk	r,|j|�q,W|S)Nr,rr	)rr;r<r6)rrr-r>r?r@r8rrr�visit_projection�s

z TreeInterpreter.visit_projectioncCsr|j|dd|�}y|j�}Wntk
r4dSXg}x2|D]*}|j|dd|�}|dk	r@|j|�q@W|S)Nr,rr	)r�valuesr0r6)rrr-r>r?r@r8rrr�visit_value_projection�s
z&TreeInterpreter.visit_value_projectioncCs(|dkp&|gkp&|ikp&|dkp&|dkS)N�Fr)rr-rrrrO�s zTreeInterpreter._is_falsecCs|j|�S)N)rO)rr-rrrr=szTreeInterpreter._is_true)N)'rrr�operatorr"r$rr&�ger2�dictr(r
rr/r1r3r4r5r9rArCrDrFrGrJrKrLrMrNrQrRrSrTrUrWrOr=�
__classcell__rr)r+rr HsD




r cs,eZdZ�fdd�Zdd�Zdd�Z�ZS)�GraphvizVisitorcstt|�j�g|_d|_dS)Nr	)r'r]r
�_lines�_count)r)r+rrr

szGraphvizVisitor.__init__cOsP|jjd�d|d|jf}|jd7_|j||�|jjd�dj|j�S)Nz
digraph AST {z%s%srr	�}�
)r^r6r_�_visit�join)rrrrr8rrrrszGraphvizVisitor.visitcCs||jjd||d|jdd�f�xT|jdg�D]D}d|d|jf}|jd7_|jjd||f�|j||�q0WdS)	Nz%s [label="%s(%s)"]rr-rXr,z%s%sr	z
  %s -> %s)r^r6rr_rb)rrr8r7Z
child_namerrrrbszGraphvizVisitor._visit)rrrr
rrbr\rr)r+rr]	sr])rYZjmespathrrr�objectr
rrr r]rrrr�<module>sB