a
´iÉ ã @ s€ d Z g d¢ZddlZddlZddlZddd„Zddd„Zejj e_ ejj e_ G d d
„ d
ejƒZ dd„ Z
d
d„ Zedkr|eƒ dS )zUPython interface for the 'lsprof' profiler.
Compatible with the 'profile' module.
)ÚrunÚrunctxÚProfileé Néÿÿÿÿc C s t t¡ | ||¡S ©N)Ú
_pyprofileÚ_Utilsr r )Ú statementÚfilenameÚsort© r ú /usr/lib64/python3.9/cProfile.pyr s r c C s t t¡ | ||||¡S r )r r r r )r ÚglobalsÚlocalsr
r r r r
r s ÿr c @ sZ e Zd ZdZddd„Zdd„ Zdd„ Zd d
„ Zdd„ Zd
d„ Z dd„ Z
dd„ Zdd„ ZdS )r a` Profile(timer=None, timeunit=None, subcalls=True, builtins=True)
Builds a profiler object using the specified timer function.
The default timer is a fast built-in one based on real time.
For custom timer functions returning integers, timeunit can
be a float specifying a scale (i.e. how long each integer unit
is, in seconds).
r c C s$ dd l }| | ¡ ¡ |¡ ¡ d S ©Nr )ÚpstatsÚStatsZ
strip_dirsZ
sort_statsÚprint_stats)Úselfr r r r r
r ) s zProfile.print_statsc C sL dd l }t|dƒ�&}| ¡ | | j|¡ W d ƒ n1 s>0 Y d S )Nr Úwb)ÚmarshalÚopenÚcreate_statsÚdumpÚstats)r Úfiler Úfr r r
Ú
dump_stats- s zProfile.dump_statsc C s | ¡ | ¡ d S r )ÚdisableÚsnapshot_stats©r r r r
r 3 s zProfile.create_statsc
C s* | ¡ }i | _i }|D ]P}t|jƒ}|j}||j }|j}|j}i } | |t|jƒ<