@@ -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