Edit File: pstats.cpython-38.opt-2.pyc
U ����@��d�j����������������������@���s���d�dl�Z�d�dlZd�dlZd�dlZd�dlZd�dlmZ�d�dlmZ�ddgZ G�dd��de e�ZG�dd��d�ZG�dd ��d �Z d d��Zdd ��Zdd��Zdd��Zdd��Zdd��Zdd��Zedk�r|d�dlZzd�dlZW�n�ek r����Y�nX�G�dd��dej�Zee�j�dk�re�jd�ZndZzPee�Ze�jdd��D�]Ze� e���q,e!dej"d��e�#���e!dej"d��W�n�e$k �rz���Y�nX�dS�) �����N)�Enum)� cmp_to_key�Stats�SortKeyc�������������������@���s8���e�Zd�ZdZdZdZdZdZdZdZ dZ d Zd d��ZdS�) r���)�calls�ncalls)� cumulative�cumtime)�filename�module�line�name�nfl�pcalls�stdname)�time�tottimec�����������������G���s@���|d�}t��|�|�}||_|dd���D�]}||�j|<�q&||_|S��Nr�������)�str�__new__�_value_�_value2member_map_Z_all_values)�cls�values�value�objZother_value��r����+/opt/alt/python38/lib64/python3.8/pstats.pyr���-���s����zSortKey.__new__N) �__name__� __module__�__qualname__ZCALLSZ CUMULATIVEZFILENAMEZLINE�NAMEZNFLZPCALLSZSTDNAMEZTIMEr���r���r���r���r���r���"���s���c�������������������@���s����e�Zd�Zdd�dd�Zdd��Zdd��Zd d ��Zdd��Zd d��Zdddddddddddddd� Z dd��Z dd��Zdd��Zdd ��Z d!d"��Zd#d$��Zd%d&��Zd'd(��Zd)d*��Zd+d,��Zd-d.��Zd6d0d1�Zd2d3��Zd4d5��ZdS�)7r���N)�streamc����������������G���sF���|pt�j|�_t|�sd�}n|d�}|dd���}|��|��|�j|���d�S�r���)�sys�stdoutr#����len�init�add)�selfr#����args�argr���r���r����__init__Y���s���� zStats.__init__c�����������������C���s����d�|�_�g�|�_d�|�_d|�_d|�_d|�_d|�_t��|�_i�|�_ i�|�_ |��|��z|�����W�n8�t k r����td|�jrx|�jd�nd�|�jd����Y�nX�d�S�)Nr���zInvalid timing data %s�������file)�all_callees�files�fcn_list�total_tt�total_calls� prim_calls�max_name_len�set� top_level�stats� sort_arg_dict� load_stats�get_top_level_stats� Exception�printr#���)r)���r+���r���r���r���r'���c���s(���� ��z Stats.initc�������������� ���C���s����|d�kri�|�_�d�S�t|t�rxt|d��}t�|�|�_�W�5�Q�R�X�z"t�|�}t� |j �d�|�}W�n���Y�nX�|g|�_n t|d�r�|� ���|j�|�_�i�|_�|�j�s�td|�j|f���d�S�)N�rbz �create_statsz.Cannot create or construct a %r object from %r)r:���� isinstancer����open�marshal�load�os�statr����ctime�st_mtimer2����hasattrrA���� TypeError� __class__)r)���r+����fZ file_statsr���r���r���r<���v���s*���� �zStats.load_statsc�����������������C���s����|�j����D�]p\}\}}}}}|��j|7��_|��j|7��_|��j|7��_d|krZ|�j�|��tt|��|�j kr tt|��|�_ q d�S�)N)Zjprofiler���Zprofiler) r:����itemsr5���r6���r4���r9���r(���r&����func_std_stringr7���)r)����func�cc�nc�tt�ct�callersr���r���r���r=�������s����zStats.get_top_level_statsc�����������������G���s����|s|�S�t�|�D�]�}t|��t|�kr,t|�}|��j|j7��_|��j|j7��_|��j|j7��_|��j|j7��_|jD�]}|�j�|��qr|�j |j k�r�|j |�_ d�|�_ |j���D�]<\}}||�jkr�|�j|�}nddddi�f}t ||�|�j|<�q�q|�S��Nr���)�reversed�typer���r2���r5���r6���r4���r9���r(���r7���r3���r:���rN����add_func_stats)r)����arg_list�itemrP���rG���Z old_func_statr���r���r���r(�������s(���� z Stats.addc�������������� ���C���s(���t�|d��}t�|�j|��W�5�Q�R�X�d�S�)N�wb)rC���rD����dumpr:���)r)���r ���rM���r���r���r���� dump_stats����s����zStats.dump_stats)))r���r-���z call count)))����r-���zcumulative time))�����r���z file name))�����r���zline number))�����r���z function name))rd���r`���rb���zname/file/line)))r���r-���zprimitive call count)))����r���z standard name)))����r-���z internal time) r���r���r ���r���r ���r���r���r ���r���r���r���r���r���c�����������������C���st���|�j�sni��|�_�}i�}|�j���D�]>\}}|}|r|s4q||krFd||<�q|||<�|d�d��}q*q|D�] }||=�qb|�j�S�)Nr���r-���)r;����sort_arg_dict_defaultrN���)r)����dictZbad_list�word�tupZfragmentr���r���r����get_sort_arg_defs����s ���� zStats.get_sort_arg_defsc�����������������G���s\��|sd|�_�|�S�t|�dkrBt|d�t�rBddddd�|d��g}n:t|�dkr||dd���D�] }t|�t|d��krZtd ��qZ|����}d }d|�_d}|D�]B}t|t�r�|j }|||�d��}|��j|||�d��7��_d}q�g�}|�j ���D�]4\}\} } }}} |�| | ||f|�t |�|f���q�|jtt|�j�d ��g��|�_�}|D�]}|�|d����qB|�S�)Nr���r���r���r���r���r���)r-���r���r���rg���rg���zCan't have mixed argument typer���r.���z, )�keyr-���)r3���r&���rB����intrX���rK���rl���� sort_typer���r���r:���rN����appendrO����sortr���� TupleComp�compare)r)���Zfieldr+���Z sort_arg_defsZ sort_tupleZ connectorrj���Z stats_listrP���rQ���rR���rS���rT���rU���r3����tupler���r���r���� sort_stats����sF������ � zStats.sort_statsc�����������������C���s���|�j�r|�j�����|�S��N)r3����reverse�r)���r���r���r���� reverse_order��s���� zStats.reverse_orderc�����������������C���s����|�j�}i��|�_�}d}|���D�]�\}\}}}}} t|�} tt| ��|krRtt| ��}i�}| ���D�]\}} | |t|�<�q^| |kr�t|| �|||||f�|| <�q|||||f|| <�q|�j}t���|�_}|D�]}|�t|���q�||�_ d�|�_ d�|�_|�S�rV���)r:���rN����func_strip_pathr&���rO���rY���r9���r8���r(���r7���r3���r1���)r)���ZoldstatsZnewstatsr7���rP���rQ���rR���rS���rT���rU���ZnewfuncZ newcallers�func2�callerZold_topZnew_topr���r���r���� strip_dirs��s0���� � zStats.strip_dirsc����������� ������C���st���|�j�r d�S�i��|�_�}|�j���D�]P\}\}}}}}||kr@i�||<�|���D�]$\}} ||kr`i�||<�| ||�|<�qHqd�S�rv���)r1���r:���rN���) r)���r1���rP���rQ���rR���rS���rT���rU���r{���r|���r���r���r����calc_callees#��s���� zStats.calc_calleesc�����������������C���s��|}t�|t�rpzt�|�}W�n*�tjk rF���|d|�7�}||f�Y�S�X�g�}|D�]}|�t|��rP|�|��qPnzt|�}t�|t �r�d|��kr�dk�r�n�nt ||�d��}|d�|��}n2t�|t �r�d|��kr�|k�r�n�n|}|d�|��}t|�t|�k�r|dt|�t|�|f�7�}||fS�)Nz# <Invalid regular expression %r> g��������g�������?g�������?r���z6 List reduced from %r to %r due to restriction <%r> )rB���r����re�compile�error�searchrO���rp���r&����floatrn���)r)���Zsel�list�msgZnew_listZrexrP����countr���r���r����eval_print_amount6��s2���� ""���zStats.eval_print_amountc�����������������C���s����|�j�}|�jr*|�jd�d���}d|�j�d�}nt|�j����}d}|D�]}|��|||�\}}q@t|�}|sld|fS�t||�j d��|t|�j�k�r�d}|D�] }tt |��|kr�tt |��}q�|d�|fS�)Nz Ordered by: � z! Random listing order was used r���r/���rg���)r7���r3���ro���r����r:����keysr����r&���r?���r#���rO���)r)���Zsel_list�widthZ stat_listr����Z selectionr����rP���r���r���r����get_print_listP��s$����zStats.get_print_listc�����������������G���s����|�j�D�]}t||�jd��q|�j�r,t|�jd��d}|�jD�]}t|t|�|�jd��q6t||�jdd|�jd��|�j|�jkr�td|�j�d|�jd��td|�j�|�jd��t|�jd��|��|�\}}|r�|�� ���|D�]}|�� |��q�t|�jd��t|�jd��|�S�)Nr/���� zfunction calls� ��endr0���z(%d primitive calls)zin %.3f seconds)r2���r?���r#���r9����func_get_function_namer5���r6���r4���r�����print_title� print_line)r)����amountr ����indentrP���r����r����r���r���r����print_statsh��s(���� zStats.print_statsc�����������������G���sz���|���|�\}}|rv|�����|��|d��|D�]2}||�jkrN|��|||�j|���q*|��||i���q*t|�jd��t|�jd��|�S�)Nz called...r/���)r����r~����print_call_headingr1����print_call_liner?���r#���)r)���r����r����r����rP���r���r���r���� print_callees��s���� zStats.print_calleesc����������� ������G���sh���|���|�\}}|rd|��|d��|D�](}|�j|�\}}}}} |��||| d��q"t|�jd��t|�jd��|�S�)Nzwas called by...z<-r/���)r����r����r:���r����r?���r#���) r)���r����r����r����rP���rQ���rR���rS���rT���rU���r���r���r���� print_callers���s����zStats.print_callersc����������� ������C���sv���t�d�|�|�|�jd��d}|�j���D�]0\}}}}}|r&tt|�����} t| t�}�qXq&|rrt�d|�d�|�jd��d�S�)Nz Function r/���Fr����z ncalls tottime cumtime) r?����ljustr#���r:���r����next�iterrB���rt���) r)���� name_sizeZcolumn_titleZ subheaderrQ���rR���rS���rT���rU���r���r���r���r���r�������s���� zStats.print_call_heading�->c�����������������C���s��t�t|��|�|�d|�jd��|s2t�|�jd��d�S�t|����}d}|D�]�}t|�}||�} t| t�r�| \} }}} | |kr�d| |f�}n d| f�}d|�dd t |����t |�t | �|f�}|d �}n$d|| t |�j|�d��f�}|d�}t�||�|�|�jd��d}qFd�S�) Nr����r����r/���r.���z%d/%dz%dz%s %s %s %srf���rg���r���z %s(%r) %sr_���)r?���rO���r����r#����sortedr����rB���rt����rjustr&����f8r:���)r)���r�����sourceZ call_dictZarrowZclistr����rP���r ���r���rR���rQ���rS���rT���ZsubstatsZ left_widthr���r���r���r�������s0���� ��� zStats.print_call_linec�����������������C���s"���t�dd|�jd��t�d|�jd��d�S�)Nz- ncalls tottime percall cumtime percallr����r����zfilename:lineno(function)r/����r?���r#���rx���r���r���r���r�������s����zStats.print_titlec�����������������C���s����|�j�|�\}}}}}t|�}||kr4|d�t|��}t|�d�d|�jd��tt|�d|�jd��|dkrxtdd|�jd��ntt||��d|�jd��tt|�d|�jd��|dkr�tdd|�jd��ntt||��d|�jd��tt|�|�jd��d�S�)N�/� ���r����r����r���r����r/���)r:���r���r?���r����r#���r����rO���)r)���rP���rQ���rR���rS���rT���rU����cr���r���r���r�������s����zStats.print_line)r����)r���r ���r!���r,���r'���r<���r=���r(���r^���rh���rl���ru���ry���r}���r~���r����r����r����r����r����r����r����r����r����r���r���r���r���r���7���sD���" �' c�������������������@���s���e�Zd�Zdd��Zdd��ZdS�)rr���c�����������������C���s ���||�_�d�S�rv�����comp_select_list)r)���r����r���r���r���r,������s����zTupleComp.__init__c�����������������C���sF���|�j�D�]:\}}||�}||�}||k�r0|���S�||kr|��S�qdS�rV���r����)r)����left�right�index� direction�l�rr���r���r���rs������s���� zTupleComp.compareN)r���r ���r!���r,���rs���r���r���r���r���rr������s���rr���c�����������������C���s���|�\}}}t�j�|�||fS�rv���)rF����path�basename)� func_namer ���r���r ���r���r���r���rz������s���� rz���c�����������������C���s���|�d�S�)Nrg���r���)rP���r���r���r���r�������s����r����c�����������������C���sN���|�d�d��dkrB|�d�}|��d�r<|�d�r<d|dd���S�|S�nd|��S�d�S�) Nrg���)�~r����<�>z{%s}r���r-���z %s:%d(%s))� startswith�endswith)r����r ���r���r���r���rO������s����rO���c�����������������C���s@���|\}}}}}|�\}}} } }||�||�|| �|| �t�||�fS�rv���)�add_callers)�targetr����rQ���rR���rS���rT���rU���Zt_ccZt_ncZt_ttZt_ctZ t_callersr���r���r���rY�����s �����rY���c�����������������C���s����i�}|�����D�]\}}|||<�q|����D�]V\}}||krtt|t�rbtdd��t|||��D���||<�q|||��|7��<�q&|||<�q&|S�)Nc�����������������s���s���|�]\}}||�V��qd�S�rv���r���)�.0�i�jr���r���r���� <genexpr>��s�����zadd_callers.<locals>.<genexpr>)rN���rB���rt����zip)r����r����Znew_callersrP���r|���r���r���r���r������s���� " r����c�����������������C���s���d}|�����D�]}||7�}q|S�rV���)r���)rU���rR���r���r���r���r����count_calls��s���� r����c�����������������C���s���d|��S�)Nz%8.3fr���)�xr���r���r���r����(��s����r�����__main__c�������������������@���s����e�Zd�Zd6dd�Zdd��Zdd��Zdd ��Zd d��Zdd ��Zdd��Z dd��Z dd��Zdd��Zdd��Z dd��Zdd��Zdd��Zdd��Zd d!��Zd"d#��Zd$d%��Zd&d'��Zd(d)��Zd*d+��Zd,d-��Zd.d/��Zd0d1��Zd2d3��Zd4d5��ZdS�)7�ProfileBrowserNc�����������������C���s6���t�j�|���d|�_d�|�_tj|�_|d�k r2|��|��d�S�)N�% ) �cmd�Cmdr,����promptr:���r$���r%���r#����do_read)r)����profiler���r���r���r,���7��s����zProfileBrowser.__init__c�������������� ���C���s����|����}g�}|D�]�}z|�t|���W�qW�n�tk r>���Y�nX�z<t|�}|dksZ|dk�rltd|�jd��W�q|�|��W�qW�n�tk r����Y�nX�|�|��q|�jr�t|�j|�|���ntd|�jd��dS�)Nr���r���z#Fraction argument must be in [0, 1]r/����No statistics object is loaded.) �splitrp���rn���� ValueErrorr����r?���r#���r:����getattr)r)����fnr���r*���Z processedZtermZfracr���r���r����generic?��s,���� zProfileBrowser.genericc�����������������C���sX���t�d|�jd��t�d|�jd��t�d|�jd��t�d|�jd��t�d|�jd��t�d|�jd��d�S�)NzArguments may be:r/���z0* An integer maximum number of entries to print.z:* A decimal fractional number between 0 and 1, controllingz- what fraction of selected entries to print.z8* A regular expression; only entries with function namesz that match it are printed.r����rx���r���r���r����generic_helpW��s����zProfileBrowser.generic_helpc�������������� ���C���sd���|�j�rRz|�j��|��W�q`�tk rN�}�ztd||f�|�jd��W�5�d�}~X�Y�q`X�ntd|�jd��dS�)Nz$Failed to load statistics for %s: %sr/���r����r���)r:���r(����OSErrorr?���r#���)r)���r����er���r���r����do_add_��s����*zProfileBrowser.do_addc�����������������C���s���t�d|�jd��d�S�)Nz>Add profile info from given file to current statistics object.r/���r����rx���r���r���r����help_addh��s����zProfileBrowser.help_addc�����������������C���s���|���d|�S�)Nr�����r�����r)���r���r���r���r���� do_calleesk��s����zProfileBrowser.do_calleesc�����������������C���s���t�d|�jd��|�����d�S�)Nz6Print callees statistics from the current stat object.r/����r?���r#���r����rx���r���r���r����help_calleesm��s����zProfileBrowser.help_calleesc�����������������C���s���|���d|�S�)Nr����r����r����r���r���r���� do_callersq��s����zProfileBrowser.do_callersc�����������������C���s���t�d|�jd��|�����d�S�)Nz6Print callers statistics from the current stat object.r/���r����rx���r���r���r����help_callerss��s����zProfileBrowser.help_callersc�����������������C���s���t�d|�jd��dS�)Nr.���r/���r���r����r����r���r���r����do_EOFw��s����zProfileBrowser.do_EOFc�����������������C���s���t�d|�jd��d�S��NzLeave the profile browser.r/���r����rx���r���r���r����help_EOFz��s����zProfileBrowser.help_EOFc�����������������C���s���dS�)Nr���r���r����r���r���r����do_quit}��s����zProfileBrowser.do_quitc�����������������C���s���t�d|�jd��d�S�r����r����rx���r���r���r���� help_quit��s����zProfileBrowser.help_quitc�������������� ���C���s����|r�zt�|�|�_W�nz�tk rN�}�zt|jd�|�jd��W�Y��d�S�d�}~X�Y�n@�tk r��}�z"t|jjd�||�jd��W�Y��d�S�d�}~X�Y�nX�|d�|�_ n6t |�j �dkr�|�j d�d��}|��|��ntd|�jd��dS�) Nr���r/����:r����rg������z1No statistics object is current -- cannot reload.r���)r���r:���r����r?���r*���r#���r>���rL���r���r����r&���r����)r)���r����errr���r���r���r�������s����zProfileBrowser.do_readc�����������������C���s ���t�d|�jd��t�d|�jd��d�S�)Nz+Read in profile data from a specified file.r/���z*Without argument, reload the current file.r����rx���r���r���r���� help_read���s����zProfileBrowser.help_readc�����������������C���s$���|�j�r|�j�����ntd|�jd��dS�)Nr����r/���r���)r:���ry���r?���r#���r����r���r���r���� do_reverse���s����zProfileBrowser.do_reversec�����������������C���s���t�d|�jd��d�S�)Nz/Reverse the sort order of the profiling report.r/���r����rx���r���r���r����help_reverse���s����zProfileBrowser.help_reversec��������������������s����|�j�std|�jd��d�S�|�j������|rRt��fdd�|���D���rR|�j�j|������n<td|�jd��tj� ��D�]"\}}td||d�f�|�jd��qjdS�) Nr����r/���c�����������������3���s���|�]}|��kV��qd�S�rv���r���)r����r�����Zabbrevsr���r���r�������s�����z)ProfileBrowser.do_sort.<locals>.<genexpr>z/Valid sort keys (unique prefixes are accepted):z%s -- %sr���r���) r:���r?���r#���rl����allr����ru���r���rh���rN���)r)���r���rm���r���r���r����r����do_sort���s���� zProfileBrowser.do_sortc�����������������C���s ���t�d|�jd��t�d|�jd��d�S�)Nz.Sort profile data according to specified keys.r/���z3(Typing `sort' without arguments lists valid keys.)r����rx���r���r���r���� help_sort���s����zProfileBrowser.help_sortc��������������������s�����fdd�t�jD��S�)Nc��������������������s���g�|�]}|�����r|�qS�r���)r����)r�����a��textr���r���� <listcomp>���s����� �z0ProfileBrowser.complete_sort.<locals>.<listcomp>)r���rh���)r)���r����r*���r���r����r���� complete_sort���s����zProfileBrowser.complete_sortc�����������������C���s���|���d|�S�)Nr����r����r����r���r���r����do_stats���s����zProfileBrowser.do_statsc�����������������C���s���t�d|�jd��|�����d�S�)Nz.Print statistics from the current stat object.r/���r����rx���r���r���r���� help_stats���s����zProfileBrowser.help_statsc�����������������C���s$���|�j�r|�j�����ntd|�jd��d�S�)Nr����r/���)r:���r}���r?���r#���r����r���r���r����do_strip���s����zProfileBrowser.do_stripc�����������������C���s���t�d|�jd��d�S�)Nz<Strip leading path information from filenames in the report.r/���r����rx���r���r���r���� help_strip���s����zProfileBrowser.help_stripc�����������������C���s���t�d|�jd��d�S�)NzShow help for a given command.r/���r����rx���r���r���r���� help_help���s����zProfileBrowser.help_helpc�����������������C���s���|r|S�d�S�rv���r���)r)����stopr���r���r���r����postcmd���s����zProfileBrowser.postcmd)N)r���r ���r!���r,���r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r����r���r���r���r���r����6��s4��� r����r���rg���z*Welcome to the profile statistics browser.r/���zGoodbye.)%r$���rF���r���rD���r����enumr���� functoolsr����__all__r���r���r���rr���rz���r����rO���rY���r����r����r����r���r�����readline�ImportErrorr����r����r&����argvZinitprofileZbrowserr����r����r?���r#���Zcmdloop�KeyboardInterruptr���r���r���r����<module>���sP������ �