File: //lib64/python3.9/__pycache__/tracemalloc.cpython-39.opt-1.pyc
a
    �DOgF  �                   @   s  d dl mZmZ d dlmZ d dlZd dlZd dlZd dl	Z	d dl
T d dl
mZmZ dd� Z
G dd	� d	�ZG d
d� d�Zdd
� ZeG dd� d��ZeG dd� de��Zdd� ZG dd� d�ZG dd� de�Zdd� ZG dd� d�ZG dd� de�ZG dd� de�ZG d d!� d!�Zd"d#� ZdS )$�    )�Sequence�Iterable)�total_orderingN)�*)�_get_object_traceback�_get_tracesc                 C   s�   dD ]|}t | �dk r@|dkr@|r0d| |f   S d| |f   S t | �dk sT|dkrx|rhd| |f   S d	| |f   S | d
 } qd S )N)�BZKiBZMiBZGiB�TiB�d   r   z%+.1f %sz%.1f %si (  r	   z%+.0f %sz%.0f %si   )�abs)�size�signZunit� r   �#/usr/lib64/python3.9/tracemalloc.py�_format_size
   s    r   c                   @   sD   e Zd ZdZdZdd� Zdd� Zdd� Zd	d
� Zdd� Z	d
d� Z
dS )�	StatisticzS
    Statistic difference on memory allocations between two Snapshot instance.
    ��	tracebackr   �countc                 C   s   || _ || _|| _d S �Nr   )�selfr   r   r   r   r   r   �__init__%   s    zStatistic.__init__c                 C   s   t | j| j| jf�S r   )�hashr   r   r   �r   r   r   r   �__hash__*   s    zStatistic.__hash__c                 C   s2   t |t�stS | j|jko0| j|jko0| j|jkS r   )�
isinstancer   �NotImplementedr   r   r   �r   �otherr   r   r   �__eq__-   s    
�
�zStatistic.__eq__c                 C   sB   d| j t| jd�| jf }| jr>| j| j }|dt|d� 7 }|S )Nz%s: size=%s, count=%iF�, average=%s)r   r   r   r   �r   �textZaverager   r   r   �__str__4   s    
��zStatistic.__str__c                 C   s   d| j | j| jf S )Nz)<Statistic traceback=%r size=%i count=%i>r   r   r   r   r   �__repr__>