1313
1414
1515# Original objects
16- _gevent_hub_spawn_raw = gevent .hub .spawn_raw
17- _gevent_joinall = gevent .joinall
18- _gevent_wait = gevent .wait
19- _gevent_iwait = gevent .iwait
16+ _gevent_hub_spawn_raw : t . Callable [..., _Greenlet ] = gevent .hub .spawn_raw
17+ _gevent_joinall : t . Callable [..., None ] = gevent .joinall
18+ _gevent_wait : t . Callable [..., t . Any ] = gevent .wait
19+ _gevent_iwait : t . Callable [..., t . Any ] = gevent .iwait
2020
2121# Global package state
2222_greenlet_frames : t .Dict [int , t .Union [FrameType , bool , None ]] = {}
2323_original_greenlet_tracer : t .Optional [t .Callable [[str , t .Any ], None ]] = None
2424_greenlet_parent_map : t .Dict [int , int ] = {}
2525_parent_greenlet_count : t .Dict [int , int ] = {}
2626
27- FRAME_NOT_SET = False # Sentinel for when the frame is not set
27+ FRAME_NOT_SET : bool = False # Sentinel for when the frame is not set
2828
2929
3030class GreenletTrackingError (Exception ):
@@ -34,7 +34,7 @@ class GreenletTrackingError(Exception):
3434
3535
3636def track_gevent_greenlet (greenlet : _Greenlet ) -> _Greenlet :
37- greenlet_id = thread .get_ident (greenlet )
37+ greenlet_id : int = thread .get_ident (greenlet )
3838 frame : t .Union [FrameType , bool , None ] = FRAME_NOT_SET
3939
4040 try :
@@ -66,7 +66,7 @@ def update_greenlet_frame(greenlet_id: int, frame: t.Union[FrameType, bool, None
6666def greenlet_tracer (event : str , args : t .Any ) -> None :
6767 if event in {"switch" , "throw" }:
6868 # This tracer function runs in the context of the target
69- origin , target = t .cast (t .Tuple [Greenlet , Greenlet ], args )
69+ origin , target = t .cast (t .Tuple [_Greenlet , _Greenlet ], args )
7070
7171 if (origin_id := thread .get_ident (origin )) not in _greenlet_frames :
7272 try :
@@ -105,7 +105,7 @@ def greenlet_tracer(event: str, args: t.Any) -> None:
105105
106106
107107def untrack_greenlet (greenlet : _Greenlet ) -> None :
108- greenlet_id = thread .get_ident (greenlet )
108+ greenlet_id : int = thread .get_ident (greenlet )
109109 stack_v2 .untrack_greenlet (greenlet_id )
110110 _greenlet_frames .pop (greenlet_id , None )
111111 _parent_greenlet_count .pop (greenlet_id , None )
@@ -140,8 +140,8 @@ def spawn_later(cls, *args: t.Any, **kwargs: t.Any) -> _Greenlet:
140140 return greenlet
141141
142142 def join (self , * args : t .Any , ** kwargs : t .Any ) -> None :
143- target_id = thread .get_ident (self )
144- origin_id = thread .get_ident (gevent .getcurrent ())
143+ target_id : int = thread .get_ident (self )
144+ origin_id : int = thread .get_ident (gevent .getcurrent ())
145145
146146 link_greenlets (target_id , origin_id )
147147
@@ -165,7 +165,7 @@ def joinall(greenlets: t.Sequence[_Greenlet], *args: t.Any, **kwargs: t.Any) ->
165165 current_greenlet = gevent .getcurrent ()
166166 if isinstance (current_greenlet , greenlet ):
167167 current_greenlet = gevent .hub .get_hub ()
168- current_greenlet_id = thread .get_ident (current_greenlet )
168+ current_greenlet_id : int = thread .get_ident (current_greenlet )
169169 for g in greenlets :
170170 link_greenlets (thread .get_ident (g ), current_greenlet_id )
171171 _gevent_joinall (greenlets , * args , ** kwargs )
@@ -182,7 +182,7 @@ def _(*args: t.Any, **kwargs: t.Any) -> t.Any:
182182 current_greenlet = gevent .getcurrent ()
183183 if isinstance (current_greenlet , greenlet ):
184184 current_greenlet = gevent .hub .get_hub ()
185- current_greenlet_id = thread .get_ident (current_greenlet )
185+ current_greenlet_id : int = thread .get_ident (current_greenlet )
186186 for g in greenlets :
187187 link_greenlets (thread .get_ident (g ), current_greenlet_id )
188188
@@ -204,7 +204,7 @@ def patch() -> None:
204204
205205 gevent .hub .spawn_raw = wrap_spawn (_gevent_hub_spawn_raw )
206206
207- _original_greenlet_tracer = settrace (greenlet_tracer )
207+ _original_greenlet_tracer = t . cast ( t . Callable [[ str , t . Any ], None ], settrace (greenlet_tracer ) )
208208
209209
210210def unpatch () -> None :
0 commit comments