← Back
Editing: aligned_indent.cpython-311.pyc
� �e}_� � �@ � d dl mZmZ d dlmZmZ G d� d� � ZdS )� )�sql�tokens)�offset�indentc �~ � e Zd ZdZdZdededdddd d ddd dfZdd�Zd d�Zd� Zd� Z d� Z d� Zd!d�Zd� Z d� Zd� Zd� ZdS )"�AlignedIndentFilterz[((LEFT\s+|RIGHT\s+|FULL\s+)?(INNER\s+|OUTER\s+|STRAIGHT\s+)?|(CROSS\s+|NATURAL\s+)?)?JOIN\bz(GROUP|ORDER)\s+BY\b�FROM�ON�WHERE�AND�OR�HAVING�LIMIT�UNION�VALUES�SET�BETWEEN�EXCEPT� � c �f � || _ d| _ d| _ || _ t d� � | _ d S )Nr �select)�nr r �char�len�_max_kwd_len)�selfr r s �A/usr/lib/python3/dist-packages/sqlparse/filters/aligned_indent.py�__init__zAlignedIndentFilter.__init__ s2 � ������������ ���M�M����� � c � � t |t � � st |� � n|}| j d| j z z }t j t j | j | j | j |z |z | j z z z � � S )N� )� isinstance�intr r r r �Token�T� Whitespacer r r )r r r s r �nlzAlignedIndentFilter.nl sz � �%/���%<�%<�H�#�f�+�+���&�����D�$5� 5�6���y���t�v�� ����&��/�$�+�=�1?� (?� @� @� @r c � � t |j � � dk r7|j d j r%| j dk r|j � d� � | � t j |j � � � � d S )Nr )r r � is_whitespacer �pop�_processr � TokenList)r �tlists r �_process_statementz&AlignedIndentFilter._process_statement( sn � ��u�|���q� � �U�\�!�_�%B� ��K�1�$�$��L���Q���� � � �c�m�E�L�1�1�2�2�2�2�2r c � � |� t j df�� � \ }}|��t | � � 5 |� |d | � d� � � � | � |� � d d d � � n# 1 swxY w Y |� |d | � � � � � d S d S )N�SELECT��mr ���)� token_next_byr'