9
9
Sequence ,
10
10
Tuple ,
11
11
Union ,
12
- cast
12
+ cast ,
13
13
)
14
+ from flask import Response
14
15
15
16
from sqlalchemy import text
16
17
from sqlalchemy .engine import Row
@@ -53,7 +54,7 @@ def filter_values(
53
54
param_key : str ,
54
55
params : Dict [str , Any ],
55
56
formatter = lambda x : x ,
56
- ):
57
+ ) -> str :
57
58
if not values :
58
59
return "FALSE"
59
60
# builds a SQL expression to filter strings (ex: locations)
@@ -68,7 +69,7 @@ def filter_strings(
68
69
values : Optional [Sequence [str ]],
69
70
param_key : str ,
70
71
params : Dict [str , Any ],
71
- ):
72
+ ) -> str :
72
73
return filter_values (field , values , param_key , params )
73
74
74
75
@@ -77,7 +78,7 @@ def filter_integers(
77
78
values : Optional [Sequence [IntRange ]],
78
79
param_key : str ,
79
80
params : Dict [str , Any ],
80
- ):
81
+ ) -> str :
81
82
return filter_values (field , values , param_key , params )
82
83
83
84
@@ -86,7 +87,7 @@ def filter_dates(
86
87
values : Optional [TimeValues ],
87
88
param_key : str ,
88
89
params : Dict [str , Any ],
89
- ):
90
+ ) -> str :
90
91
ranges = time_values_to_ranges (values )
91
92
return filter_values (field , ranges , param_key , params , date_string )
92
93
@@ -198,7 +199,7 @@ def parse_row(
198
199
fields_string : Optional [Sequence [str ]] = None ,
199
200
fields_int : Optional [Sequence [str ]] = None ,
200
201
fields_float : Optional [Sequence [str ]] = None ,
201
- ):
202
+ ) -> Dict [ str , Any ] :
202
203
keys = set (row .keys ())
203
204
parsed = dict ()
204
205
if fields_string :
@@ -234,7 +235,7 @@ def limit_query(query: str, limit: int) -> str:
234
235
return full_query
235
236
236
237
237
- def run_query (p : APrinter , query_tuple : Tuple [str , Dict [str , Any ]]):
238
+ def run_query (p : APrinter , query_tuple : Tuple [str , Dict [str , Any ]]) -> Iterable [ Row ] :
238
239
query , params = query_tuple
239
240
# limit rows + 1 for detecting whether we would have more
240
241
full_query = text (limit_query (query , p .remaining_rows + 1 ))
@@ -254,7 +255,7 @@ def execute_queries(
254
255
fields_int : Sequence [str ],
255
256
fields_float : Sequence [str ],
256
257
transform : Callable [[Dict [str , Any ], Row ], Dict [str , Any ]] = _identity_transform ,
257
- ):
258
+ ) -> Response :
258
259
"""
259
260
execute the given queries and return the response to send them
260
261
"""
@@ -313,14 +314,14 @@ def execute_query(
313
314
fields_int : Sequence [str ],
314
315
fields_float : Sequence [str ],
315
316
transform : Callable [[Dict [str , Any ], Row ], Dict [str , Any ]] = _identity_transform ,
316
- ):
317
+ ) -> Response :
317
318
"""
318
319
execute the given query and return the response to send it
319
320
"""
320
321
return execute_queries ([(query , params )], fields_string , fields_int , fields_float , transform )
321
322
322
323
323
- def _join_l (value : Union [str , List [str ]]):
324
+ def _join_l (value : Union [str , List [str ]]) -> str :
324
325
return ", " .join (value ) if isinstance (value , (list , tuple )) else value
325
326
326
327
0 commit comments