
    +g+                       S SK Jr  SSKJrJr  S SKJr  S SKrS SKrSSK	J
r
   " S S\5      r\ " S	 S
5      5       r\ " S S5      5       r\ " S S5      5       r    S*S jrS+S jrS+S jrS+S jr    S,S jr S-     S.S jjrS/S jr S-   S0S jjr S-   S1S jjrS/S jr  S2     S3S jjr  S2     S3S jjr\" S5      \ " S S5      5       5       r\" S5      \ " S S 5      5       5       r\" S!5      \ " S" S#5      5       5       r\" S$5      \ " S% S&5      5       5       r\" S'5      \ " S( S)5      5       5       r g)4    )annotations   )event_classT_JSON_DICT)	dataclassN)runtimec                  J   ^  \ rS rSrSrSS jr\SS j5       rU 4S jrSr	U =r
$ )	HeapSnapshotObjectId   z
Heap snapshot object id.
c                    U $ N )selfs    |/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/selenium/webdriver/common/devtools/v85/heap_profiler.pyto_jsonHeapSnapshotObjectId.to_json   s        c                    U " U5      $ r   r   clsjsons     r   	from_jsonHeapSnapshotObjectId.from_json   s    4yr   c                >   > SR                  [        TU ]	  5       5      $ )NzHeapSnapshotObjectId({}))formatsuper__repr__)r   	__class__s    r   r   HeapSnapshotObjectId.__repr__   s    )001A1CDDr   r   )returnstr)r   r!   r    r
   )__name__
__module____qualname____firstlineno____doc__r   classmethodr   r   __static_attributes____classcell__)r   s   @r   r
   r
      s-      E Er   r
   c                  X    \ rS rSr% SrS\S'   S\S'   S\S'   S	\S
'   S r\S 5       rSr	g)SamplingHeapProfileNode   z`
Sampling Heap Profile node. Holds callsite information, allocation statistics and child nodes.
zruntime.CallFrame
call_framefloat	self_sizeintid_z$typing.List[SamplingHeapProfileNode]childrenc                    [        5       nU R                  R                  5       US'   U R                  US'   U R                  US'   U R
                   Vs/ s H  o"R                  5       PM     snUS'   U$ s  snf )N	callFrameselfSizeidr2   )dictr-   r   r/   r1   r2   r   r   is      r   r   SamplingHeapProfileNode.to_json/   sg    v OO335[>>ZXXT
15?AIIK?Z @s   A5c                    U " [         R                  R                  US   5      [        US   5      [	        US   5      US    Vs/ s H  n[
        R                  U5      PM     snS9$ s  snf )Nr4   r5   r6   r2   )r-   r/   r1   r2   )r   	CallFramer   r.   r0   r+   r   r   r9   s      r   r   !SamplingHeapProfileNode.from_json7   sk    ((2243DED,-DJDHDTUDTq-77:DTU	
 	
 Vs   A)r   N
r"   r#   r$   r%   r&   __annotations__r   r'   r   r(   r   r   r   r+   r+      s?     "!  
H 32 
 
r   r+   c                  N    \ rS rSr% SrS\S'   S\S'   S\S'   S r\S	 5       rS
r	g)SamplingHeapProfileSampleA   z*
A single sample from a sampling profile.
r.   sizer0   node_idordinalc                t    [        5       nU R                  US'   U R                  US'   U R                  US'   U$ )NrD   nodeIdrF   )r7   rD   rE   rF   )r   r   s     r   r   !SamplingHeapProfileSample.to_jsonP   s5    vyyVX,,Yr   c                Z    U " [        US   5      [        US   5      [        US   5      S9$ )NrD   rH   rF   )rD   rE   rF   )r.   r0   r   s     r   r   #SamplingHeapProfileSample.from_jsonW   s3    tF|$X'$y/*
 	
r   r   Nr?   r   r   r   rB   rB   A   s5     K L N 
 
r   rB   c                  D    \ rS rSr% SrS\S'   S\S'   S r\S 5       rS	r	g
)SamplingHeapProfile`   z
Sampling profile.
r+   headz&typing.List[SamplingHeapProfileSample]samplesc                    [        5       nU R                  R                  5       US'   U R                   Vs/ s H  o"R                  5       PM     snUS'   U$ s  snf )NrO   rP   )r7   rO   r   rP   r8   s      r   r   SamplingHeapProfile.to_jsoni   sI    vyy((*V04=199;=Y >s   Ac           	         U " [         R                  US   5      US    Vs/ s H  n[        R                  U5      PM     snS9$ s  snf )NrO   rP   )rO   rP   )r+   r   rB   r=   s      r   r   SamplingHeapProfile.from_jsono   sF    (224<@EI)_U_.88;_U
 	
Us   A
r   Nr?   r   r   r   rM   rM   `   s.     "!33 
 
r   rM   c              #  X   #    [        5       nU R                  5       US'   SUS.nUv ng7f)z
Enables console to refer to the node with given id via $x (see Command Line API for more details
$x functions).

:param heap_object_id: Heap snapshot object id to be accessible by means of $x command line API.
heapObjectIdz#HeapProfiler.addInspectedHeapObjectmethodparamsN)r7   r   )heap_object_idrY   cmd_dictr   s       r   add_inspected_heap_objectr\   w   s7      &F+335F>7H >Ds   (*c               #     #    SS0n U v ng 7f)NrX   zHeapProfiler.collectGarbager   r[   r   s     r   collect_garbager_      s      	/H >D   
c               #     #    SS0n U v ng 7f)NrX   zHeapProfiler.disabler   r^   s     r   disablerb      s      	(H >Dr`   c               #     #    SS0n U v ng 7f)NrX   zHeapProfiler.enabler   r^   s     r   enablerd      s      	'H >Dr`   c              #     #    [        5       nU R                  5       US'   SUS.nUv n[        R                  US   5      $ 7f)z
:param object_id: Identifier of the object to get heap object id for.
:returns: Id of the heap snapshot object corresponding to the passed remote object id.
objectIdzHeapProfiler.getHeapObjectIdrW   heapSnapshotObjectId)r7   r   r
   r   )	object_idrY   r[   r   s       r   get_heap_object_idri      sN      &F"**,F:0H >D))$/E*FGGs   ?Ac              #     #    [        5       nU R                  5       US'   Ub  XS'   SUS.nUv n[        R                  R	                  US   5      $ 7f)z
:param object_id:
:param object_group: *(Optional)* Symbolic group name that can be used to release multiple objects.
:returns: Evaluation result.
rf   objectGroupz$HeapProfiler.getObjectByHeapObjectIdrW   result)r7   r   r   RemoteObjectr   )rh   object_grouprY   r[   r   s        r   get_object_by_heap_object_idro      s`      &F"**,F: ,}8H >D))$x.99s   AAc               #  J   #    SS0n U v n[         R                  US   5      $ 7f)z:


:returns: Return the sampling profile being collected.
rX   zHeapProfiler.getSamplingProfileprofilerM   r   r^   s     r   get_sampling_profilers      s2      	3H >D((i99   !#c              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z
:param sampling_interval: *(Optional)* Average sample interval in bytes. Poisson distribution is used for the intervals. The default value is 32768 bytes.
NsamplingIntervalzHeapProfiler.startSamplingrW   r7   )sampling_intervalrY   r[   r   s       r   start_samplingry      s3      &F$%6!".H >D   c              #  @   #    [        5       nU b  XS'   SUS.nUv ng7f)z(
:param track_allocations: *(Optional)*
NtrackAllocationsz%HeapProfiler.startTrackingHeapObjectsrW   rw   )track_allocationsrY   r[   r   s       r   start_tracking_heap_objectsr~      s3      &F$%6!"9H >Drz   c               #  J   #    SS0n U v n[         R                  US   5      $ 7f)z-


:returns: Recorded sampling heap profile.
rX   zHeapProfiler.stopSamplingrq   rr   r^   s     r   stop_samplingr      s2      	-H >D((i99rt   c              #  N   #    [        5       nU b  XS'   Ub  XS'   SUS.nUv ng7f)z
:param report_progress: *(Optional)* If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken when the tracking is stopped.
:param treat_global_objects_as_roots: *(Optional)*
NreportProgresstreatGlobalObjectsAsRootsz$HeapProfiler.stopTrackingHeapObjectsrW   rw   report_progresstreat_global_objects_as_rootsrY   r[   r   s        r   stop_tracking_heap_objectsr     sB      &F"#2 $0.K*+8H >D   #%c              #  N   #    [        5       nU b  XS'   Ub  XS'   SUS.nUv ng7f)z
:param report_progress: *(Optional)* If true 'reportHeapSnapshotProgress' events will be generated while snapshot is being taken.
:param treat_global_objects_as_roots: *(Optional)* If true, a raw snapshot without artifical roots will be generated
Nr   r   zHeapProfiler.takeHeapSnapshotrW   rw   r   s        r   take_heap_snapshotr     sB      &F"#2 $0.K*+1H >Dr   z!HeapProfiler.addHeapSnapshotChunkc                  4    \ rS rSr% S\S'   \SS j5       rSrg)AddHeapSnapshotChunki)  r!   chunkc                &    U " [        US   5      S9$ )Nr   )r   )r!   r   s     r   r   AddHeapSnapshotChunk.from_json.  s    d7m$
 	
r   r   N)r   r   r    r   r"   r#   r$   r%   r@   r'   r   r(   r   r   r   r   r   )  s     J
 
r   r   zHeapProfiler.heapStatsUpdatec                  8    \ rS rSr% SrS\S'   \SS j5       rSrg)	HeapStatsUpdatei5  zb
If heap objects tracking has been started then backend may send update for one or more fragments
ztyping.List[int]stats_updatec                R    U " US    Vs/ s H  n[        U5      PM     snS9$ s  snf )NstatsUpdate)r   )r0   r=   s      r   r   HeapStatsUpdate.from_json@  s/    *.}*=>*=Q#a&*=>
 	
>s   $r   N)r   r   r    r   	r"   r#   r$   r%   r&   r@   r'   r   r(   r   r   r   r   r   5  s!     #"
 
r   r   zHeapProfiler.lastSeenObjectIdc                  B    \ rS rSr% SrS\S'   S\S'   \S
S j5       rSrg	)LastSeenObjectIdiG  a  
If heap objects tracking has been started then backend regularly sends a current value for last
seen object id and corresponding timestamp. If the were changes in the heap since last event
then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.
r0   last_seen_object_idr.   	timestampc                @    U " [        US   5      [        US   5      S9$ )NlastSeenObjectIdr   )r   r   )r0   r.   r   s     r   r   LastSeenObjectId.from_jsonR  s*     #D);$< =D-.
 	
r   r   N)r   r   r    r   r   r   r   r   r   r   G  s'    
 
 
r   r   z'HeapProfiler.reportHeapSnapshotProgressc                  H    \ rS rSr% S\S'   S\S'   S\S'   \S
S j5       rSrg	)ReportHeapSnapshotProgressiZ  r0   donetotaltyping.Optional[bool]finishedc                n    U " [        US   5      [        US   5      SU;   a  [        US   5      S9$ S S9$ )Nr   r   r   )r   r   r   )r0   boolr   s     r   r   $ReportHeapSnapshotProgress.from_jsona  sL    T&\"d7m$/9T/AT$z*+
 	
 HL
 	
r   r   N)r   r   r    r   r   r   r   r   r   r   Z  s&     IJ##
 
r   r   zHeapProfiler.resetProfilesc                  (    \ rS rSr\SS j5       rSrg)ResetProfilesij  c                    U " 5       $ r   r   r   s     r   r   ResetProfiles.from_jsono  s     
 	
r   r   N)r   r   r    r   )r"   r#   r$   r%   r'   r   r(   r   r   r   r   r   j  s    
 
 
r   r   )rZ   r
   r    0typing.Generator[T_JSON_DICT, T_JSON_DICT, None])r    r   )rh   zruntime.RemoteObjectIdr    z@typing.Generator[T_JSON_DICT, T_JSON_DICT, HeapSnapshotObjectId]r   )rh   r
   rn   ztyping.Optional[str]r    z@typing.Generator[T_JSON_DICT, T_JSON_DICT, runtime.RemoteObject])r    z?typing.Generator[T_JSON_DICT, T_JSON_DICT, SamplingHeapProfile])rx   ztyping.Optional[float]r    r   )r}   r   r    r   )NN)r   r   r   r   r    r   )!
__future__r   utilr   r   dataclassesr   enumtyping r   r!   r
   r+   rB   rM   r\   r_   rb   rd   ri   ro   rs   ry   r~   r   r   r   r   r   r   r   r   r   r   r   <module>r      s#   # * !   E3 E 
 
 
D 
 
 
< 
 
 
,,	7$H)H	GH& .2:':*: 
H:*
: 591	7" 480	7 
: 26?C.'< 
8* 26?C.'< 
8( 01

 
  2
 +,

 
  -
  ,-

 
  .
" 67

 
  8
 )*

 
  +
r   