ML ig@ddlmZddlZddlZddlmZGddZy)) annotationsN)Mappingc0eZdZdZddZddZd dZd dZy) GcLoggerz1Context manager to log GC stats and overall time.cd|_d|_d|_d|_d|_t j j|jtj|_ |S)Ngr) gc_start_timegc_timegc_calls gc_collectedgc_uncollectablegc callbacksappend gc_callbacktime start_time)selfs S/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/mypy/gclogger.py __enter__zGcLogger.__enter__ sR+/   ! D,,-))+ c|dk(r-|jJdtj|_y|dk(r|jJd|xjdz c_|xjtj|jz z c_d|_|xj|dz c_|xj |dz c_yJd|d ) NstartzStart phase out of sequencestopzStop phase out of sequence collected uncollectablezUnrecognized gc phase ())rrr r r r )rphaseinfos rrzGcLogger.gc_callbacks G %%- L/L L-!%D  f_%%1 O3O O1 MMQ M LLDIIK$*<*<< 3E9A> >5rc|jtjvrGtjj|j|jtjvrFyy)N)rr rremove)rargss r__exit__zGcLogger.__exit__#s@",,. LL   0 0 1",,.rctj}|j|j|j|j||j z d}|S)N)r r r r build_time)rr r r r r)rend_timeresults r get_statszGcLogger.get_stats'sG99;||  -- $ 5 5"T__4   rN)returnr)rstrrzMapping[str, int]r)None)r"objectr)r+)r)zMapping[str, float])__name__ __module__ __qualname____doc__rrr#r(rrrrs; ?2 rr) __future__rr rcollections.abcrrr1rrr4s" #((r