@@ -37,7 +37,7 @@ def needs_space(l: str, r: str) -> bool:
3737def untokenize (tokens : Tuple [str , ...]) -> str :
3838 line = []
3939 for i in range (len (tokens ) - 1 ):
40- if tokens [i : i + 2 ] == ("void" , ")" ):
40+ if tokens [i : i + 2 ] == ("void" , ")" ):
4141 break
4242 line .append (tokens [i ])
4343 if needs_space (tokens [i ], tokens [i + 1 ]):
@@ -74,8 +74,9 @@ def parse_params(tokens: Tuple[str, ...]) -> List[Tuple[List[str], str]]:
7474 return params
7575
7676
77- def finalize_handler (type_prefix : str , handlers : List [str ], event : str ,
78- params : List [str ]) -> None :
77+ def finalize_handler (
78+ type_prefix : str , handlers : List [str ], event : str , params : List [str ]
79+ ) -> None :
7980 handlers [- 1 ] += ":"
8081 self = ""
8182 array = ""
@@ -132,8 +133,9 @@ def handle_macro(tokens: Sequence[str], state: List[str]) -> bool:
132133 return False
133134
134135
135- def handle_types (tokens : Sequence [str ], state : List [str ], extern : List [str ],
136- const_prefix : str ) -> bool :
136+ def handle_types (
137+ tokens : Sequence [str ], state : List [str ], extern : List [str ], const_prefix : str
138+ ) -> bool :
137139 # struct definitions (members are ignored)
138140 if tokens [0 ] == "struct" and tokens [- 1 ] == "{" :
139141 state .append ("struct" )
@@ -145,8 +147,7 @@ def handle_types(tokens: Sequence[str], state: List[str], extern: List[str],
145147 extern .append (f" ctypedef struct { tokens [2 ]} " )
146148
147149 # enums
148- if (tokens [:2 ] == ("typedef" , "enum" )
149- or tokens [0 ] == "enum" ) and tokens [- 1 ] == "{" :
150+ if (tokens [:2 ] == ("typedef" , "enum" ) or tokens [0 ] == "enum" ) and tokens [- 1 ] == "{" :
150151 extern .append ("" )
151152 extern .append (f" cpdef enum { tokens [- 2 ]} :" )
152153 state .append ("enum" )
@@ -157,38 +158,41 @@ def handle_types(tokens: Sequence[str], state: List[str], extern: List[str],
157158
158159
159160def handle_functions (
160- tokens : Tuple [str , ...],
161- state : List [str ],
162- extern : List [str ],
163- fun_prefix : str ,
164- type_prefix : str ,
165- event : str ,
166- params : List [str ],
167- handlers : List [str ],
168- install_handlers : List [str ],
161+ tokens : Tuple [str , ...],
162+ state : List [str ],
163+ extern : List [str ],
164+ fun_prefix : str ,
165+ type_prefix : str ,
166+ event : str ,
167+ params : List [str ],
168+ handlers : List [str ],
169+ install_handlers : List [str ],
169170) -> str :
170171 # functions and callbacks
171- if ("(" in tokens and tokens [0 ].isidentifier ()
172- and token_before ("(" , tokens ).startswith (fun_prefix )
173- and tokens [0 ] != "typedef" ):
172+ if (
173+ "(" in tokens
174+ and tokens [0 ].isidentifier ()
175+ and token_before ("(" , tokens ).startswith (fun_prefix )
176+ and tokens [0 ] != "typedef"
177+ ):
174178 extern .append (f" cdef { untokenize_fun (tokens )} " )
175179 if ";" not in tokens :
176180 state .append ("fun" )
177181 return event
178182 if tokens [:2 ] == ("typedef" , "void" ):
179183 extern .append (f" c{ untokenize_fun (tokens )} " )
180184
181- event = tokens [2 ][len (fun_prefix ): - 3 ]
185+ event = tokens [2 ][len (fun_prefix ) : - 3 ]
182186 params .clear ()
183187 params .extend (tokens [3 :])
184188
185189 # TODO(iphydf): Handle this better (by checking whether we have a callback install
186190 # function for this event).
187191 if event != "log" :
188- handlers .append (
189- f"cdef void handle_{ untokenize_fun ((event ,) + tokens [3 :])} " )
192+ handlers .append (f"cdef void handle_{ untokenize_fun ((event ,) + tokens [3 :])} " )
190193 install_handlers .append (
191- f" { fun_prefix } callback_{ event } (ptr, handle_{ event } )" )
194+ f" { fun_prefix } callback_{ event } (ptr, handle_{ event } )"
195+ )
192196 if ";" not in tokens :
193197 state .append ("callback" )
194198 else :
@@ -273,8 +277,7 @@ def gen_cython(lines: Sequence[str], fun_prefix: str) -> List[str]:
273277 )
274278
275279 if install_handlers :
276- install_handlers = (
277- ["cdef void install_handlers(Tox *ptr):" ] + install_handlers )
280+ install_handlers = ["cdef void install_handlers(Tox *ptr):" ] + install_handlers
278281 return extern + ["" ] + handlers + ["" ] + install_handlers
279282
280283
@@ -286,12 +289,14 @@ def main() -> None:
286289 for line in src_fh .readlines ():
287290 if line .startswith ("cdef extern from" ):
288291 with open (api , "r" , encoding = "utf-8" ) as api_fh :
289- print ("\n " .join (
290- gen_cython (
291- api_fh .readlines (),
292- fun_prefix = os .path .split (api )[- 1 ].split ("." )[0 ] +
293- "_" ,
294- )))
292+ print (
293+ "\n " .join (
294+ gen_cython (
295+ api_fh .readlines (),
296+ fun_prefix = os .path .split (api )[- 1 ].split ("." )[0 ] + "_" ,
297+ )
298+ )
299+ )
295300 else :
296301 print (line .rstrip ())
297302
0 commit comments