관리-도구
편집 파일: lexer.cpython-311.pyc
� S�Dg{v � � � d Z ddlZddlmZ ddlmZ ddlmZ ddlm Z ddlm Z dd lmZ dd lmZ ddl mZ ddlmZ ed � � Z ej dej � � Z ej d� � Z ej dej � � Z ej d� � Z ej dej ej z � � Z eddd� � ddlmZ dZn# e $ r ej d� � ZdZY nw xY w e d� � Z! e d� � Z" e d� � Z# e d� � Z$ e d� � Z% e d� � Z& e d � � Z' e d!� � Z( e d"� � Z) e d#� � Z* e d$� � Z+ e d%� � Z, e d&� � Z- e d'� � Z. e d(� � Z/ e d)� � Z0 e d*� � Z1 e d+� � Z2 e d,� � Z3 e d-� � Z4 e d.� � Z5 e d/� � Z6 e d0� � Z7 e d1� � Z8 e d2� � Z9 e d3� � Z: e d4� � Z; e d5� � Z< e d6� � Z= e d7� � Z> e d8� � Z? e d9� � Z@ e d:� � ZA e d;� � ZB e d<� � ZC e d=� � ZD e d>� � ZE e d?� � ZF e d@� � ZG e dA� � ZH e dB� � ZI e dC� � ZJ e dD� � ZK e dE� � ZL e dF� � ZM e dG� � ZN e dH� � ZO e dI� � ZP e dJ� � ZQi dKe!�dLe9�dMe%�dNe(�dOe1�dPe0�dQe4�dRe:�dSe,�dTe6�dUe-�dVe7�dWe+�dXe5�dYe'�dZe2�d[e)�e*e.e/e"e&e#e3e$e8d\� �ZR eSd]� eeR� � D � � � � ZT eUeR� � eUeT� � k s J d^� � � ej d_d`�V da� eWeRdb� �c� � D � � � � z � � ZX eYeGeIeHe;eLeMeNg� � ZZ eYe;eOeIeNg� � Z[dd� Z\de� Z]df� Z^dg� Z_dh� Z` G di� djea� � Zb G dk� dlec� � Zde G dm� dnea� � � � Zee G do� dpea� � � � Zfdq� Zg G dr� dsec� � Zh G dt� duea� � ZidS )vz�Implements a Jinja / Python combination lexer. The ``Lexer`` class is used to do some preprocessing. It filters out invalid operators like the bitshift operators we don't allow in templates. It separates template code and python code in expressions. � N)�literal_eval)�deque)� itemgetter� )�implements_iterator)�intern)� iteritems)� text_type)�TemplateSyntaxError)�LRUCache�2 z\s+z(\r\n|\r|\n)z7('([^'\\]*(?:\\.[^'\\]*)*)'|"([^"\\]*(?:\\.[^"\\]*)*)")z (\d+_)*\d+z� (?<!\.) # doesn't start with a . (\d+_)*\d+ # digits, possibly _ separated ( (\.(\d+_)*\d+)? # optional fractional part e[+\-]?(\d+_)*\d+ # exponent part | \.(\d+_)*\d+ # required fractional part ) u fööz <unknown>�eval)�patternTz[a-zA-Z_][a-zA-Z0-9_]*F�add�assign�colon�comma�div�dot�eq�floordiv�gt�gteq�lbrace�lbracket�lparen�lt�lteq�mod�mul�ne�pipe�pow�rbrace�rbracket�rparen� semicolon�sub�tilde� whitespace�float�integer�name�string�operator�block_begin� block_end�variable_begin�variable_end� raw_begin�raw_end� comment_begin�comment_end�comment�linestatement_begin�linestatement_end�linecomment_begin�linecomment_end�linecomment�data�initial�eof�+�-�/z//�*�%z**�~�[�]�(�)�{�}z==z!=�>) z>=�<z<=�=�.�:�|�,�;c � � g | ] \ }}||f�� S � rV )�.0�k�vs �l/builddir/build/BUILD/imunify360-venv-2.4.0/opt/imunify360/venv/lib/python3.11/site-packages/jinja2/lexer.py� <listcomp>r[ � s � �B�B�B�T�Q��1�a�&�B�B�B� zoperators droppedz(%s)rR c # �>