Edit File: tracemalloc.cpython-38.opt-2.pyc
U ����@��d�B����������������������@���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)�sizeZsignZunit��r ����0/opt/alt/python38/lib64/python3.8/tracemalloc.py�_format_size ���s����r���c�������������������@���s@���e�Zd�ZdZdd��Zdd��Zdd��Zdd ��Zd d��Zdd ��Z dS�)� Statistic�� 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���s$���|�j�|j�ko"|�j|jko"|�j|jkS�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__2���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__<���s�����zStatistic.__repr__c�����������������C���s���|�j�|�j|�jfS�r���)r���r���r���r���r ���r ���r���� _sort_key@���s����zStatistic._sort_keyN� �__name__� __module__�__qualname__� __slots__r���r���r���r ���r!���r"���r ���r ���r ���r���r������s��� r���c�������������������@���s@���e�Zd�ZdZdd��Zdd��Zdd��Zdd ��Zd d��Zdd ��Z dS�)� StatisticDiff�r���r���� size_diffr���� count_diffc�����������������C���s"���||�_�||�_||�_||�_||�_d�S�r���r)���)r���r���r���r*���r���r+���r ���r ���r���r���K���s ����zStatisticDiff.__init__c�����������������C���s���t�|�j|�j|�j|�j|�jf�S�r���)r���r���r���r*���r���r+���r���r ���r ���r���r���R���s������zStatisticDiff.__hash__c�����������������C���s<���|�j�|j�ko:|�j|jko:|�j|jko:|�j|jko:|�j|jkS�r���r)���r���r ���r ���r���r���V���s���� � � � �zStatisticDiff.__eq__c�����������������C���sP���d|�j�t|�jd�t|�jd�|�j|�jf�}|�jrL|�j|�j�}|dt|d��7�}|S�)Nz %s: size=%s (%s), count=%i (%+i)FTr���)r���r���r���r*���r���r+���r���r ���r ���r���r ���]���s���� ��zStatisticDiff.__str__c�����������������C���s���d|�j�|�j|�j|�j|�jf�S�)Nz9<StatisticDiff traceback=%r size=%i (%+i) count=%i (%+i)>r)���r���r ���r ���r���r!���i���s�������zStatisticDiff.__repr__c�����������������C���s ���t�|�j�|�jt�|�j�|�j|�jfS�r���)r���r*���r���r+���r���r���r���r ���r ���r���r"���n���s ������zStatisticDiff._sort_keyNr#���r ���r ���r ���r���r(���D���s���r(���c�����������������C���s����g�}|����D�]d\}}|��|d��}|d�k rNt||j|j|j�|j|j|j��}nt||j|j|j|j�}|�|��q|�����D�]*\}}t|d|j�d|j��}|�|��qz|S��Nr���)�items�popr(���r���r����append)� old_group� new_group� statisticsr����statZpreviousr ���r ���r����_compare_grouped_statst���s*����� � ����r4���c�������������������@���sX���e�Zd�ZdZdd��Zedd���Zedd���Zdd ��Zd d��Z dd ��Z dd��Zdd��ZdS�)�Frame��_framec�����������������C���s ���||�_�d�S�r���r6����r����framer ���r ���r���r�������s����zFrame.__init__c�����������������C���s ���|�j�d�S�r,���r6���r���r ���r ���r����filename����s����zFrame.filenamec�����������������C���s ���|�j�d�S��N����r6���r���r ���r ���r����lineno����s����zFrame.linenoc�����������������C���s���|�j�|j�kS�r���r6���r���r ���r ���r���r�������s����zFrame.__eq__c�����������������C���s���|�j�|j�k�S�r���r6���r���r ���r ���r����__lt__����s����zFrame.__lt__c�����������������C���s ���t�|�j�S�r���)r���r7���r���r ���r ���r���r�������s����zFrame.__hash__c�����������������C���s���d|�j�|�jf�S�)Nz%s:%s�r:���r=���r���r ���r ���r���r �������s����z Frame.__str__c�����������������C���s���d|�j�|�jf�S�)Nz<Frame filename=%r lineno=%r>r?���r���r ���r ���r���r!�������s����zFrame.__repr__N) r$���r%���r&���r'���r����propertyr:���r=���r���r>���r���r ���r!���r ���r ���r ���r���r5�������s��� r5���c�������������������@���sb���e�Zd�ZdZdd��Zdd��Zdd��Zdd ��Zd d��Zdd ��Z dd��Z dd��Zdd��Zddd�Z dS�)� Traceback��_framesc�����������������C���s���t��|���tt|��|�_d�S�r���)r���r����tuple�reversedrC���)r����framesr ���r ���r���r�������s���� zTraceback.__init__c�����������������C���s ���t�|�j�S�r���)�lenrC���r���r ���r ���r����__len__����s����zTraceback.__len__c�����������������C���s4���t�|t�r"tdd��|�j|�D���S�t|�j|��S�d�S�)Nc�����������������s���s���|�]}t�|�V��qd�S�r���)r5�����.0�tracer ���r ���r���� <genexpr>����s�����z(Traceback.__getitem__.<locals>.<genexpr>)� isinstance�slicerD���rC���r5����r����indexr ���r ���r����__getitem__����s���� zTraceback.__getitem__c�����������������C���s���|j�|�jkS�r���)r7���rC���r8���r ���r ���r����__contains__����s����zTraceback.__contains__c�����������������C���s ���t�|�j�S�r���)r���rC���r���r ���r ���r���r�������s����zTraceback.__hash__c�����������������C���s���|�j�|j�kS�r���rB���r���r ���r ���r���r�������s����zTraceback.__eq__c�����������������C���s���|�j�|j�k�S�r���rB���r���r ���r ���r���r>�������s����zTraceback.__lt__c�����������������C���s���t�|�d��S�r,���)�strr���r ���r ���r���r �������s����zTraceback.__str__c�����������������C���s���dt�|��f�S�)Nz<Traceback %r>)rD���r���r ���r ���r���r!�������s����zTraceback.__repr__NFc�����������������C���s����g�}|d�k r2|dkr$|�|�d���}q6|�d�|��}n|�}|rBt�|�}|D�]@}|�d|j|jf���t�|j|j����}|rF|�d|���qF|S�)Nr���z File "%s", line %sz %s)rE���r/���r:���r=���� linecache�getline�strip)r����limitZmost_recent_first�linesZframe_slicer9����liner ���r ���r����format����s ���� �zTraceback.format)NF)r$���r%���r&���r'���r���rH���rQ���rR���r���r���r>���r ���r!���rZ���r ���r ���r ���r���rA�������s���rA���c�����������������C���s ���t�|��}|d�k rt|�S�d�S�d�S�r���)r���rA���)�objrF���r ���r ���r����get_object_traceback����s����r\���c�������������������@���s\���e�Zd�ZdZdd��Zedd���Zedd���Zedd ���Zd d��Z dd ��Z dd��Zdd��ZdS�)�Trace��_tracec�����������������C���s ���||�_�d�S�r���r^����r���rK���r ���r ���r���r������s����zTrace.__init__c�����������������C���s ���|�j�d�S�r,���r^���r���r ���r ���r����domain��s����zTrace.domainc�����������������C���s ���|�j�d�S�r;���r^���r���r ���r ���r���r��� ��s����z Trace.sizec�����������������C���s���t�|�jd��S�)N����)rA���r_���r���r ���r ���r���r��� ��s����zTrace.tracebackc�����������������C���s���|�j�|j�kS�r���r^���r���r ���r ���r���r�����s����zTrace.__eq__c�����������������C���s ���t�|�j�S�r���)r���r_���r���r ���r ���r���r�����s����zTrace.__hash__c�����������������C���s���d|�j�t|�jd�f�S�)Nz%s: %sF)r���r���r���r���r ���r ���r���r �����s����z Trace.__str__c�����������������C���s���d|�j�t|�jd�|�jf�S�)Nz'<Trace domain=%s size=%s, traceback=%r>F)ra���r���r���r���r���r ���r ���r���r!�����s�����zTrace.__repr__N) r$���r%���r&���r'���r���r@���ra���r���r���r���r���r ���r!���r ���r ���r ���r���r]�������s��� r]���c�������������������@���s<���e�Zd�Zdd��Zdd��Zdd��Zdd��Zd d ��Zdd��Zd S�)�_Tracesc�����������������C���s���t��|���||�_d�S�r���)r���r����_traces)r����tracesr ���r ���r���r��� ��s���� z_Traces.__init__c�����������������C���s ���t�|�j�S�r���)rG���rd���r���r ���r ���r���rH���%��s����z_Traces.__len__c�����������������C���s4���t�|t�r"tdd��|�j|�D���S�t|�j|��S�d�S�)Nc�����������������s���s���|�]}t�|�V��qd�S�r���)r]���rI���r ���r ���r���rL���*��s�����z&_Traces.__getitem__.<locals>.<genexpr>)rM���rN���rD���rd���r]���rO���r ���r ���r���rQ���(��s���� z_Traces.__getitem__c�����������������C���s���|j�|�jkS�r���)r_���rd���r`���r ���r ���r���rR���.��s����z_Traces.__contains__c�����������������C���s���|�j�|j�kS�r���)rd���r���r ���r ���r���r���1��s����z_Traces.__eq__c�����������������C���s���dt�|���S�)Nz<Traces len=%s>)rG���r���r ���r ���r���r!���4��s����z_Traces.__repr__N) r$���r%���r&���r���rH���rQ���rR���r���r!���r ���r ���r ���r���rc�����s���rc���c�����������������C���s&���t�j�|��}�|��d�r"|�d�d��}�|�S�)Nz.pyc���)�os�path�normcase�endswith)r:���r ���r ���r����_normalize_filename8��s���� rk���c�������������������@���s���e�Zd�Zdd��Zdd��ZdS�)� BaseFilterc�����������������C���s ���||�_�d�S�r���)� inclusive)r���rm���r ���r ���r���r���@��s����zBaseFilter.__init__c�����������������C���s���t��d�S�r���)�NotImplementedErrorr`���r ���r ���r����_matchC��s����zBaseFilter._matchN)r$���r%���r&���r���ro���r ���r ���r ���r���rl���?��s���rl���c�����������������������sJ���e�Zd�Zd��fdd� Zedd���Zdd��Zd d ��Zdd��Zd d��Z ���Z S�)�FilterNFc��������������������s2���t����|��||�_t|�|�_||�_||�_||�_d�S�r���)�superr���rm���rk����_filename_patternr=���� all_framesra���)r���rm����filename_patternr=���rs���ra����� __class__r ���r���r���H��s���� zFilter.__init__c�����������������C���s���|�j�S�r���)rr���r���r ���r ���r���rt���Q��s����zFilter.filename_patternc�����������������C���s6���t�|�}t�||�j�sdS�|�jd�kr(dS�||�jkS�d�S�)NFT)rk����fnmatchrr���r=����r���r:���r=���r ���r ���r����_match_frame_implU��s���� zFilter._match_frame_implc�����������������C���s���|���||�|�j�A�S�r���)ry���rm���rx���r ���r ���r����_match_frame^��s����zFilter._match_framec��������������������sH�����j�r,t��fdd�|D���r"��jS���j�S�n|d�\}}���||�S�d�S�)Nc�����������������3���s���|�]\}}����||�V��qd�S�r���)ry���)rJ���r:���r=���r���r ���r���rL���c��s����z*Filter._match_traceback.<locals>.<genexpr>r���)rs����anyrm���rz���)r���r���r:���r=���r ���r���r����_match_tracebacka��s����� zFilter._match_tracebackc�����������������C���sD���|\}}}|���|�}|�jd�k r@|�jr2|o0||�jkS�|p>||�jkS�|S�r���)r|���ra���rm���)r���rK���ra���r���r����resr ���r ���r���ro���l��s���� z Filter._match)NFN)r$���r%���r&���r���r@���rt���ry���rz���r|���ro���� __classcell__r ���r ���ru���r���rp���G��s��������� rp���c�����������������������s0���e�Zd�Z��fdd�Zedd���Zdd��Z���ZS�)�DomainFilterc��������������������s���t����|��||�_d�S�r���)rq���r����_domain)r���rm���ra���ru���r ���r���r���x��s����zDomainFilter.__init__c�����������������C���s���|�j�S�r���)r����r���r ���r ���r���ra���|��s����zDomainFilter.domainc�����������������C���s���|\}}}||�j�k|�j�A�S�r���)ra���rm���)r���rK���ra���r���r���r ���r ���r���ro������s���� zDomainFilter._match)r$���r%���r&���r���r@���ra���ro���r~���r ���r ���ru���r���r���w��s��� r���c�������������������@���sT���e�Zd�Zdd��Zdd��Zedd���Zdd��Zd d ��Zdd��Z ddd�Z ddd�ZdS�)�Snapshotc�����������������C���s���t�|�|�_||�_d�S�r���)rc���re����traceback_limit)r���re���r����r ���r ���r���r������s���� zSnapshot.__init__c�������������� ���C���s*���t�|d��}t�|�|tj��W�5�Q�R�X�d�S�)N�wb)�open�pickle�dumpZHIGHEST_PROTOCOL)r���r:����fpr ���r ���r���r�������s����z Snapshot.dumpc�������������� ���C���s,���t�|�d��}t�|�W��5�Q�R���S�Q�R�X�d�S�)N�rb)r����r�����load)r:���r����r ���r ���r���r�������s����z Snapshot.loadc��������������������s@���|rt���fdd�|D���sdS�|r<t���fdd�|D���r<dS�dS�)Nc�����������������3���s���|�]}|�����V��qd�S�r����ro����rJ����trace_filter�rK���r ���r���rL������s����z)Snapshot._filter_trace.<locals>.<genexpr>Fc�����������������3���s���|�]}|������V��qd�S�r���r����r����r����r ���r���rL������s����T)r{���)r����include_filters�exclude_filtersrK���r ���r����r���� _filter_trace���s������zSnapshot._filter_tracec��������������������s����t�|t�stdt|�j���|rjg��g���|D�] }|jrB��|��q,���|��q,����fdd��jjD��}n�jj� ��}t |�j�S�)Nz)filters must be a list of filters, not %sc��������������������s���g�|�]}������|�r|�qS�r ���)r����rI����r����r����r���r ���r���� <listcomp>���s������z*Snapshot.filter_traces.<locals>.<listcomp>)rM���r���� TypeError�typer$���rm���r/���re���rd����copyr����r����)r����filtersr����Z new_tracesr ���r����r���� filter_traces���s���� �zSnapshot.filter_tracesc����������� ��� ���C���s���|dkrt�d|f���|r.|dkr.t�d|���i�}i�}|�s|�jjD�]�}|\}}}z||�} W�nZ�tk r����|dkr||} n(|dkr�|d�d��} n|d�d�dff} t| �} | ||<�Y�nX�z(|| �}|�j|7��_|�jd7��_W�qD�tk �r���t| |d�|| <�Y�qDX�qDn�|�jjD�]�}|\}}}|D�]�}z||�} W�nF�tk �r~���|dk�r\|f} n|d�dff} t| �} | ||<�Y�nX�z(|| �}|�j|7��_|�jd7��_W�n&�tk �r����t| |d�|| <�Y�nX��q(�q|S�) N)r���r:���r=���zunknown key_type: %r)r=���r:���z/cumulative mode cannot by used with key type %rr���r=���r<���r���)� ValueErrorre���rd����KeyErrorrA���r���r���r���) r����key_type� cumulativeZstatsZ tracebacksrK���ra���r���Ztrace_tracebackr���rF���r3���r9���r ���r ���r���� _group_by���sZ����� zSnapshot._group_byFc�����������������C���s,���|���||�}t|����}|jdtjd��|S��NT)�reverse�key)r�����list�values�sortr���r"���)r���r����r����Zgroupedr2���r ���r ���r���r2������s����zSnapshot.statisticsc�����������������C���s6���|���||�}|��||�}t||�}|jdtjd��|S�r����)r����r4���r����r(���r"���)r���Zold_snapshotr����r����r1���r0���r2���r ���r ���r���� compare_to���s ���� zSnapshot.compare_toN)F)F)r$���r%���r&���r���r�����staticmethodr����r����r����r����r2���r����r ���r ���r ���r���r�������s��� 3 r����c������������������C���s$���t���std��t��}�t��}t|�|�S�)NzLthe tracemalloc module must be tracing memory allocations to take a snapshot)� is_tracing�RuntimeErrorr���Zget_traceback_limitr����)re���r����r ���r ���r���� take_snapshot ��s ����r����)Zcollections.abcr���r���� functoolsr���rw���rT���Zos.pathrg���r����Z_tracemallocr���r���r���r���r(���r4���r5���rA���r\���r]���rc���rk���rl���rp���r���r����r����r ���r ���r ���r����<module>���s2���&0"?%0�