HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/libpasteurize/fixes/__pycache__/fix_metaclass.cpython-38.pyc
U

,�]��@sjdZddlmZddlmZmZmZmZmZm	Z	ddl
mZddlm
Z
mZdd�ZGdd	�d	ej�Zd
S)zn
Fixer for (metaclass=X) -> __metaclass__ = X
Some semantics (see PEP 3115) may be altered in the translation.�)�
fixer_base)�Name�syms�Node�Leaf�Newline�	find_root)�token)�indentation�suitifyc
Csd}|jD�]�}|j}|jtjkrd|dttjd�krb|dttjd�krb|drb|g|}�qq
|jtjkr
|jD]�}|r�q
|jtj	kr�|}qvt|�t
krvd}}}|jD]P}	|	ttjd�kr�|	}q�|r�|	ttjd�kr�|	}q�|r�|r�|	}||||f}qvq�qvq
|S)Nr�	metaclass��=�)�children�typerZargumentrr	�NAME�EQUALZarglist�COMMAr)
�parent�results�nodeZkidsZchildZcomma�meta�equal�name�arg�r�C/usr/lib/python3/dist-packages/libpasteurize/fixes/fix_metaclass.py�
has_metaclasss:��



rc@seZdZdZdd�ZdS)�FixMetaclassz
    classdef<any*>
    c
Cs�t|�}|sdS|D]}|��qttjd�}ttjddd�}|}d|_ttj	|||g�}t
|�|jD]p}	|	jtj
krh|	jD]X}
|
jtjkr~|	j�|
�d}ttj|
j�}|	�||�|	�|t��|	�||�qhq~qhdS)NZ
__metaclass__r� )�prefixr
)r�removerr	rrr!rrZatomrrrZsuite�INDENT�index�valueZinsert_childr)
�selfrrZmeta_resultsr�targetrrZ	stmt_node�itemZstmtZlocZidentrrr�	transform5s*


zFixMetaclass.transformN)�__name__�
__module__�__qualname__ZPATTERNr)rrrrr/srN)�__doc__Zlib2to3rZlib2to3.fixer_utilrrrrrrZlib2to3.pygramr	Zlibfuturize.fixer_utilr
rrZBaseFixrrrrr�<module>s $