File: //lib/python3.12/__pycache__/profile.cpython-312.pyc
�
    )!�h4Z  �                   �   � d Z ddlZddlZddlZddlZddlZg d�Z G d� d�      Zdd�Z	dd�Z
 G d� d	�      Zd
� Ze
dk(  r e�        yy)
z Class for profiling Python code.�    N)�run�runctx�Profilec                   �(   � e Zd ZdZd� Zd� Zd� Zd� Zy)�_Utilsz�Support class for utility functions which are shared by
    profile.py and cProfile.py modules.
    Not supposed to be used directly.
    c                 �   � || _         y �N)�profiler)�selfr
   s     �/usr/lib/python3.12/profile.py�__init__z_Utils.__init__1   s	   � � ��
�    c                 �   � | j                  �       }	 |j                  |�       | j                  |||�       y # t        $ r Y �w xY w# | j                  |||�       w xY wr	   )r
   r   �
SystemExit�_show)r   �	statement�filename�sort�profs        r   r   z
_Utils.run4   sW   � ��}�}���	-��H�H�Y�� 
�J�J�t�X�t�,�� � 	��	�� 
�J�J�t�X�t�,�s!   �7 �	A� A �A�A �Ac                 �   � | j                  �       }	 |j                  |||�       | j                  |||�       y # t        $ r Y �w xY w# | j                  |||�       w xY wr	   )r
   r   r   r   )r   r   �globals�localsr   r   r   s          r   r   z
_Utils.runctx=   s[   � ��}�}���	-��K�K�	�7�F�3� 
�J�J�t�X�t�,�� � 	��	�� 
�J�J�t�X�t�,�s!   �9 �	A�A �A�A �Ac                 �N   � |�|j                  |�       y |j                  |�       y r	   )�
dump_stats�print_stats)r   r   r   r   s       r   r   z_Utils._showF   s"