HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python37/lib/python3.7/site-packages/jmespath/__pycache__/lexer.cpython-37.pyc
B

�P�e~!�@s@ddlZddlZddlmZddlmZmZGdd�de�ZdS)�N)�loads)�
LexerError�EmptyExpressionErrorc@s�eZdZeejd�Zeejejd�Zeej�Z	ed�Z
ddddddd	d
ddd
�
Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd S)!�Lexer�_z 	

�dot�starZrbracket�comma�colon�currentZlparenZrparenZlbrace�rbrace)
�.�*�]�,�:�@�(�)�{�}ccsF|�|��x |jdk	�r,|j|jkrR|j|j|j|j|jdd�V|��q|j|jkr�|j}|j}x|��|jkr�||j7}qlWd|||t|�d�Vq|j|jkr�|��q|jdk�r6|j}|��}|dkr�|��dd||dd�Vn<|d	k�r |��d
d||dd�Vndd||dd�Vq|jd
k�rN|�	�Vq|jdk�rl|�
ddd�Vq|jdk�r�|�
ddd�Vq|jdk�r�|��Vq|j|jk�r�|j}|�
�}dt|�||t|�d�Vq|jdk�r6|j}|�
�}t|�dk�r"dt|�||t|�d�Vnt||d|d��q|jdk�rN|��Vq|jdk�rl|�
ddd�Vq|jdk�r�|�
ddd �Vq|jd!k�r�|�
dd"d#�Vq|jdk�r|��dk�r�d$d%|jd|jd�V|��n,|jdk�r�|j}n
|jd}t|dd&d��qt|j|jd'|jd��qWd(d)|j|jd�VdS)*N�)�type�value�start�endZunquoted_identifier�[r�flattenz[]��?�filterz[?Zlbracket�'�|�or�pipe�&�andZexpref�`�number�-zUnknown token '%s')�lexer_position�lexer_value�message�"�<�=Zlte�lt�>Zgte�gt�!�ne�not�eqz==zUnknown token '='zUnknown token %s�eof�)�_initialize_for_expression�_current�
SIMPLE_TOKENS�	_position�_next�START_IDENTIFIER�VALID_IDENTIFIER�len�
WHITESPACE�_consume_raw_string_literal�_match_or_else�_consume_literal�VALID_NUMBER�_consume_number�intr�_consume_quoted_identifier�_length)�self�
expressionr�buff�	next_char�position�rO�?/opt/alt/python37/lib/python3.7/site-packages/jmespath/lexer.py�tokenizes�







zLexer.tokenizecCs.|j}|j}x|��|jkr(||j7}qW|S)N)r<r:r=rE)rJrrLrOrOrPrFqs
zLexer._consume_numbercCs@|s
t��d|_||_t|j�|_|j|j|_t|j�|_dS)Nr)rr<�_expression�list�_charsr:r@rI)rJrKrOrOrPr9xsz Lexer._initialize_for_expressioncCs:|j|jdkrd|_n|jd7_|j|j|_|jS)Nr)r<rIr:rT)rJrOrOrPr=�s
zLexer._nextcCs�|j}d}|��x`|j|krr|jdkr8|d7}|��|jdkr^t||j|d�d|d��||j7}|��qW|��|S)Nr8�\zUnclosed %s delimiter)r*r+r,)r<r=r:rrR)rJ�	delimiterrrLrOrOrP�_consume_until�s


zLexer._consume_untilcCs�|j}|�d��dd�}yt|�}Wnftk
r�y td|���}t�dt�Wn0tk
r�t	||j
|d�d|d��YnXYnX|j|}d|||d�S)	Nr'z\`z"%s"z deprecated string literal syntaxzBad token %s)r*r+r,�literal)rrrr)r<rW�replacer�
ValueError�lstrip�warnings�warn�PendingDeprecationWarningrrR)rJr�lexemeZparsed_json�	token_lenrOrOrPrD�s 

zLexer._consume_literalc
Cs||j}d|�d�d}y|j|}dt|�||d�Stk
rv}z$t|��d�d}t|||d��Wdd}~XYnXdS)Nr-Zquoted_identifier)rrrrrr)r*r+r,)r<rWrrZ�str�splitr)rJrr_r`�e�
error_messagerOrOrPrH�s

z Lexer._consume_quoted_identifiercCs0|j}|�d��dd�}|j|}d|||d�S)Nr!z\'rX)rrrr)r<rWrY)rJrr_r`rOrOrPrB�s

z!Lexer._consume_raw_string_literalcCsH|j}|j}|��}||kr:|��|||||dd�S||||d�S)Nr)rrrr)r<r:r=)rJ�expectedZ
match_typeZ	else_typerrrMrOrOrPrC�szLexer._match_or_elseN)�__name__�
__module__�__qualname__�set�string�
ascii_lettersr>�digitsr?rErAr;rQrFr9r=rWrDrHrBrCrOrOrOrPrs.
W	
r)	rjr\�jsonrZjmespath.exceptionsrr�objectrrOrOrOrP�<module>s