관리-도구
편집 파일: parser.cpython-311.pyc
� S�DgL� � �� � d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddlm Z eg d�� � Z eg d �� � Z ej ej ej ej ej ej d �Z G d� de� � Zd S )z8Parse tokens from the lexer into nodes for the compiler.� )�nodes)�imap)�TemplateAssertionError)�TemplateSyntaxError)�describe_token��describe_token_expr)�for�if�block�extends�print�macro�include�from�import�set�with� autoescape)�eq�ne�lt�lteq�gt�gteq)�add�sub�mul�div�floordiv�modc �l � e Zd ZdZd7d�Zdefd�Zd� Zd8d�Zd9d�Z d8d�Z d8d �Zd � Zd:d�Z d � Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Zd� Z d;d�Zd<d�Zd � Z d!� Z!d"� Z"d#� Z#d$� Z$d%� Z%d&� Z&d'� Z'd(� Z(d<d)�Z)d*� Z* d=d+�Z+d,� Z,d-� Z-d.� Z.d/� Z/d0� Z0d1� Z1d2� Z2d:d3�Z3d4� Z4d8d5�Z5d6� Z6dS )>�Parserz�This is the central parsing class Jinja uses. It's passed to extensions and can be used to parse expressions or statements. Nc � � || _ |� ||||� � | _ || _ || _ d| _ i | _ |� � � D ]}|j D ]}|j | j |<