403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.216.115
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/lib/python3/dist-packages/pythran/transformations/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/pythran/transformations/__pycache__/remove_lambdas.cpython-311.pyc
�

cR�a����dZddlmZmZddlmZddlmZddlm	Z	ddl
mZddlmZddl
ZGd�d	ej��ZGd
�de��ZdS)z5 RemoveLambdas turns lambda into regular functions.  �)�GlobalDeclarations�ImportedIds)�Transformation)�MODULES)�mangleN)�copyc�*��eZdZ�fd�Zd�Zd�Z�xZS)�_LambdaRemoverc�r��tt|�����||_||_dS�N)�superr
�__init__�prefix�parent)�selfrr�	__class__s   ��H/usr/lib/python3/dist-packages/pythran/transformations/remove_lambdas.pyrz_LambdaRemover.__init__s1���
�n�d�#�#�,�,�.�.�.���������c�,�t|j|��Sr)�getattrr)r�attrs  r�__getattr__z_LambdaRemover.__getattr__s���t�{�D�)�)�)rc
�
�td|j���vrstjtjdt
d����g��}|j�|��td}||jt
d��<|�	|��d�
|jt|j
����}|�t|��}|�|j
��d�t#|��D��}d�t#|��D��|jjz|j_tj|t)|j��tj|j��ggdd��}t/j|t/j����|j
�|��||j|<tj|tj��dd��}|rrtjtjtjt
d��tj��dd��dtj����|g|zg��S|S)N�	functoolsz
{0}_lambda{1}c�^�g|]*}tj|tj��dd����+Sr)�ast�Name�Load��.0�iins  r�
<listcomp>z/_LambdaRemover.visit_Lambda.<locals>.<listcomp>'s>��.�.�.���x��S�X�Z�Z��t�<�<�.�.�.rc�^�g|]*}tj|tj��dd����+Sr)rr�Paramrs  rr"z/_LambdaRemover.visit_Lambda.<locals>.<listcomp>)s>��2�2�2�"��8�C�����d�D�A�A�2�2�2r�partial)r�global_declarations�valuesr�Import�aliasr�imports�append�
generic_visit�formatr�len�lambda_functions�gatherr�difference_update�sorted�args�FunctionDefr�Return�body�metadata�add�Localrr�Call�	Attribute)	r�node�import_�functools_module�forged_name�ii�binded_args�forged_fdef�
proxy_calls	         r�visit_Lambdaz_LambdaRemover.visit_LambdasA���;��t�'?�'F�'F�'H�'H�H�H��j�#�)�K���9L�9L�"M�"M�!N�O�O�G��L����(�(�(�&�{�3��<L�D�$�V�K�%8�%8�9����4� � � �%�,�,��K���%�&�&�(�(���[�[��d�
+�
+��
���T�2�3�3�3�.�.�"(��*�*�.�.�.��2�2�&,�R�j�j�2�2�2��)�.�)��	���o�����O�O�
�Z��	�
"�
"�#���d�	���
	��[�(�.�"2�"2�3�3�3���$�$�[�1�1�1�0;�� ��-��X�k�3�8�:�:�t�T�B�B�
��
	��8��
��H�V�K�0�0�#�(�*�*�d�D�I�I���H�J�J���
��{�*����
��r)�__name__�
__module__�__qualname__rrrD�
__classcell__�rs@rr
r
sV������������
*�*�*�'�'�'�'�'�'�'rr
c�.��eZdZdZ�fd�Zd�Zd�Z�xZS)�
RemoveLambdasa�
    Turns lambda into top-level functions.

    >>> import gast as ast
    >>> from pythran import passmanager, backend
    >>> node = ast.parse("def foo(y): lambda x:y+x")
    >>> pm = passmanager.PassManager("test")
    >>> _, node = pm.apply(RemoveLambdas, node)
    >>> print(pm.dump(backend.Python, node))
    import functools as __pythran_import_functools
    def foo(y):
        __pythran_import_functools.partial(foo_lambda0, y)
    def foo_lambda0(y, x):
        return (y + x)
    c�b��tt|���t��dSr)r
rKrr)rrs �rrzRemoveLambdas.__init__Ts(���
�m�T�"�"�+�+�,>�?�?�?�?�?rc� �t��|_t��|_|�|��|j|jz|jz|_|xjt
|j��pt
|j��zc_|Sr)�listr/r*r,r6�update�bool)rr<s  r�visit_ModulezRemoveLambdas.visit_ModuleWst�� $������v�v������4� � � ��L�4�9�,�t�/D�D��	����t�D�L�)�)�H�T�$�2G�-H�-H�H����rc�b��t||j����fd�|jD��|_|S)Nc�:��g|]}��|����S�)�visit)r �n�lrs  �rr"z3RemoveLambdas.visit_FunctionDef.<locals>.<listcomp>as#���4�4�4�Q�R�X�X�a�[�[�4�4�4r)r
�namer6)rr<rWs  @r�visit_FunctionDefzRemoveLambdas.visit_FunctionDef_s6���
�D�$�)�
,�
,��4�4�4�4�$�)�4�4�4��	��r)rErFrG�__doc__rrQrYrHrIs@rrKrKBse��������� @�@�@�@�@����������rrK)rZ�pythran.analysesrr�pythran.passmanagerr�pythran.tablesr�pythran.conversionr�pythran.metadatar7r�gastr�NodeTransformerr
rKrTrr�<module>rbs���;�;�<�<�<�<�<�<�<�<�.�.�.�.�.�.�"�"�"�"�"�"�%�%�%�%�%�%�#�#�#�#�#�#�����������1�1�1�1�1�S�(�1�1�1�h � � � � �N� � � � � r

Youez - 2016 - github.com/yon3zu
LinuXploit