Skip to content

Commit 07636b4

Browse files
authored
CLN: Added static types (#33169)
1 parent 7fb878a commit 07636b4

File tree

1 file changed

+43
-19
lines changed

1 file changed

+43
-19
lines changed

pandas/_libs/tslibs/parsing.pyx

Lines changed: 43 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,13 @@ cdef inline bint does_string_look_like_time(str parse_string):
189189
return 0 <= hour <= 23 and 0 <= minute <= 59
190190

191191

192-
def parse_datetime_string(date_string: str, freq=None, dayfirst=False,
193-
yearfirst=False, **kwargs):
192+
def parse_datetime_string(
193+
str date_string,
194+
object freq=None,
195+
bint dayfirst=False,
196+
bint yearfirst=False,
197+
**kwargs,
198+
):
194199
"""
195200
Parse datetime string, only returns datetime.
196201
Also cares special handling matching time patterns.
@@ -272,8 +277,9 @@ def parse_time_string(arg: str, freq=None, dayfirst=None, yearfirst=None):
272277
return res
273278

274279

275-
cdef parse_datetime_string_with_reso(str date_string, freq=None, dayfirst=False,
276-
yearfirst=False):
280+
cdef parse_datetime_string_with_reso(
281+
str date_string, object freq=None, bint dayfirst=False, bint yearfirst=False,
282+
):
277283
"""
278284
Parse datetime string and try to identify its resolution.
279285
@@ -467,8 +473,14 @@ cdef inline object _parse_dateabbr_string(object date_string, object default,
467473
raise ValueError(f'Unable to parse {date_string}')
468474

469475

470-
cdef dateutil_parse(str timestr, object default, ignoretz=False,
471-
tzinfos=None, dayfirst=None, yearfirst=None):
476+
cdef dateutil_parse(
477+
str timestr,
478+
object default,
479+
bint ignoretz=False,
480+
object tzinfos=None,
481+
bint dayfirst=False,
482+
bint yearfirst=False,
483+
):
472484
""" lifted from dateutil to get resolution"""
473485

474486
cdef:
@@ -531,8 +543,9 @@ cdef dateutil_parse(str timestr, object default, ignoretz=False,
531543
# Parsing for type-inference
532544

533545

534-
def try_parse_dates(object[:] values, parser=None,
535-
dayfirst=False, default=None):
546+
def try_parse_dates(
547+
object[:] values, parser=None, bint dayfirst=False, default=None,
548+
):
536549
cdef:
537550
Py_ssize_t i, n
538551
object[:] result
@@ -569,9 +582,14 @@ def try_parse_dates(object[:] values, parser=None,
569582
return result.base # .base to access underlying ndarray
570583

571584

572-
def try_parse_date_and_time(object[:] dates, object[:] times,
573-
date_parser=None, time_parser=None,
574-
dayfirst=False, default=None):
585+
def try_parse_date_and_time(
586+
object[:] dates,
587+
object[:] times,
588+
date_parser=None,
589+
time_parser=None,
590+
bint dayfirst=False,
591+
default=None,
592+
):
575593
cdef:
576594
Py_ssize_t i, n
577595
object[:] result
@@ -607,8 +625,7 @@ def try_parse_date_and_time(object[:] dates, object[:] times,
607625
return result.base # .base to access underlying ndarray
608626

609627

610-
def try_parse_year_month_day(object[:] years, object[:] months,
611-
object[:] days):
628+
def try_parse_year_month_day(object[:] years, object[:] months, object[:] days):
612629
cdef:
613630
Py_ssize_t i, n
614631
object[:] result
@@ -705,6 +722,9 @@ class _timelex:
705722
function maintains a "token stack", for when the ambiguous context
706723
demands that multiple tokens be parsed at once.
707724
"""
725+
cdef:
726+
Py_ssize_t n
727+
708728
stream = self.stream.replace('\x00', '')
709729

710730
# TODO: Change \s --> \s+ (this doesn't match existing behavior)
@@ -760,15 +780,20 @@ def _format_is_iso(f) -> bint:
760780
return False
761781

762782

763-
def _guess_datetime_format(dt_str, dayfirst=False, dt_str_parse=du_parse,
764-
dt_str_split=_DATEUTIL_LEXER_SPLIT):
783+
def _guess_datetime_format(
784+
dt_str,
785+
bint dayfirst=False,
786+
dt_str_parse=du_parse,
787+
dt_str_split=_DATEUTIL_LEXER_SPLIT,
788+
):
765789
"""
766790
Guess the datetime format of a given datetime string.
767791
768792
Parameters
769793
----------
770-
dt_str : string, datetime string to guess the format of
771-
dayfirst : boolean, default False
794+
dt_str : str
795+
Datetime string to guess the format of.
796+
dayfirst : bool, default False
772797
If True parses dates with the day first, eg 20/01/2005
773798
Warning: dayfirst=True is not strict, but will prefer to parse
774799
with day first (this is a known bug).
@@ -878,8 +903,7 @@ def _guess_datetime_format(dt_str, dayfirst=False, dt_str_parse=du_parse,
878903

879904
@cython.wraparound(False)
880905
@cython.boundscheck(False)
881-
cdef inline object convert_to_unicode(object item,
882-
bint keep_trivial_numbers):
906+
cdef inline object convert_to_unicode(object item, bint keep_trivial_numbers):
883907
"""
884908
Convert `item` to str.
885909

0 commit comments

Comments
 (0)