| Server IP : 217.160.0.135 / Your IP : 216.73.217.85 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/analyses/__pycache__/ |
Upload File : |
�
cR�af � �R � d Z ddlmZ ddlmZ ddlmZ ddlZ G d� de� � Z dS )z?
PotentialIterator finds if it is possible to use an iterator.
� )�Aliases)�ArgumentReadOnce)�NodeAnalysisNc �* � e Zd ZdZd� Zd� Zd� Zd� ZdS )�PotentialIteratorz<Find whether an expression can be replaced with an iterator.c �l � t � � | _ t j | t t
� � d S �N)�set�resultr �__init__r r )�selfs �E/usr/lib/python3/dist-packages/pythran/analyses/potential_iterator.pyr zPotentialIterator.__init__ s) � ��e�e�����d�G�-=�>�>�>�>�>� c �n � | j � |j � � | � |� � d S r )r �add�iter�
generic_visit�r
�nodes r � visit_ForzPotentialIterator.visit_For s2 � ������ �"�"�"����4� � � � � r c �� � t |j d t j t j f� � r| j � |j � � | � |� � d S )Nr ) �
isinstance�ops�ast�In�NotInr �update�comparatorsr r s r �
visit_ComparezPotentialIterator.visit_Compare sV � ��d�h�q�k�C�F�C�I�#6�7�7� 1��K���t�/�0�0�0����4� � � � � r c � � ��� t |j � � D ]P\ �}� fd��t ��fd�� j |j D � � � � r� j � |� � �Q� � |� � d S )Nc �D �� | �j v o�j | | dk S )N� )�argument_read_once)�f�ir
s �r �
isReadOncez0PotentialIterator.visit_Call.<locals>.isReadOnce s- �� ��T�4�4� ;��/��2�1�5��:�<r c 3 �0 �K � | ]} �|�� � V � �d S r � )�.0�aliasr% r&