HEX
Server: LiteSpeed
System: Linux baran.dnsprotection.me 4.18.0-553.83.1.lve.el8.x86_64 #1 SMP Wed Nov 12 10:04:12 UTC 2025 x86_64
User: ddir12 (3618)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //usr/lib/python3.6/site-packages/libpasteurize/fixes/__pycache__/fix_metaclass.cpython-36.pyc
3

�c��@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
Csd}�x|jD�]�}|j}|jtjkrd|dttjd�krb|dttjd�krb|drb|g|}Pq|jtjkrx�|jD]�}|r�P|jtj	kr�|}qxt|�t
krxd}}}xX|jD]N}	|	ttjd�kr�|	}q�|r�|	ttjd�kr�|	}q�|o�|r�|	}||||f}Pq�WqxWqW|S)Nr�	metaclass��=�)�children�typerZargumentrr	�NAME�EQUALZarglist�COMMAr)
�parent�results�nodeZkidsZchildZcomma�meta�equal�name�arg�r�#/usr/lib/python3.6/fix_metaclass.py�
has_metaclasss6
rc@seZdZdZdd�ZdS)�FixMetaclassz
    classdef<any*>
    c
Cs�t|�}|sdSx|D]}|j�qWttjd�}ttjddd�}|}d|_ttj	|||g�}t
|�x||jD]r}	|	jtj
krnx`|	jD]V}
|
jtjkr�|	jj|
�d}ttj|
j�}|	j||�|	j|t��|	j||�Pq�WqnWdS)NZ
__metaclass__r� )�prefixr
)r�removerr	rrr!rrZatomrrrZsuite�INDENT�index�valueZinsert_childr)
�selfrrZmeta_resultsr�targetrrZ	stmt_node�itemZstmt�locZidentrrr�	transform5s*
zFixMetaclass.transformN)�__name__�
__module__�__qualname__ZPATTERNr*rrrrr/srN)�__doc__Zlib2to3rZlib2to3.fixer_utilrrrrrrZlib2to3.pygramr	Zlibfuturize.fixer_utilr
rrZBaseFixrrrrr�<module>s $