From 8fc809d03920e8e1215ea4b1e2e079fd9f6ac546 Mon Sep 17 00:00:00 2001 From: Melody Horn Date: Thu, 25 Mar 2021 18:56:31 -0600 Subject: start using mypy in strict mode --- yapymake/makefile/parse_util.py | 64 +++++++++++++++++++++-------------------- 1 file changed, 33 insertions(+), 31 deletions(-) (limited to 'yapymake/makefile/parse_util.py') diff --git a/yapymake/makefile/parse_util.py b/yapymake/makefile/parse_util.py index ad1e363..ded7476 100644 --- a/yapymake/makefile/parse_util.py +++ b/yapymake/makefile/parse_util.py @@ -43,6 +43,7 @@ def tag(tag_text: str) -> Parser[None]: def parse(text: str) -> ParseResult[None]: if text.startswith(tag_text): return None, text[len(tag_text):] + return None return parse def take_while1(predicate: Callable[[str], bool]) -> Parser[str]: @@ -61,13 +62,14 @@ def take_till1(predicate: Callable[[str], bool]) -> Parser[str]: def any_char(text: str) -> ParseResult[str]: if len(text) > 0: return text[0], text[1:] + return None def all_consuming(parser: Parser[T]) -> Parser[T]: def parse(text: str) -> ParseResult[T]: - result = parser(text) - if result is None: + parsed_result = parser(text) + if parsed_result is None: return None - result, extra = result + result, extra = parsed_result if len(extra) > 0: return None return result, '' @@ -75,10 +77,10 @@ def all_consuming(parser: Parser[T]) -> Parser[T]: def map_parser(parser: Parser[T1], mapper: Callable[[T1], T2]) -> Parser[T2]: def parse(text: str) -> ParseResult[T2]: - result = parser(text) - if result is None: + parsed_result = parser(text) + if parsed_result is None: return None - result, extra = result + result, extra = parsed_result return mapper(result), extra return parse @@ -92,10 +94,10 @@ def opt(parser: Parser[T]) -> Parser[Optional[T]]: def verify(parser: Parser[T], predicate: Callable[[T], bool]) -> Parser[T]: def parse(text: str) -> ParseResult[T]: - result = parser(text) - if result is None: + parsed_result = parser(text) + if parsed_result is None: return None - result, extra = result + result, extra = parsed_result if predicate(result): return result, extra return None @@ -106,13 +108,13 @@ def many1(parser: Parser[T]) -> Parser[List[T]]: parser_result = parser(text) if parser_result is None: return None - parser_result, extra = parser_result - result = [parser_result] + this_result, extra = parser_result + result = [this_result] parser_result = parser(extra) while parser_result is not None: - parser_result, extra = parser_result - result.append(parser_result) + this_result, extra = parser_result + result.append(this_result) parser_result = parser(extra) return result, extra return parse @@ -124,10 +126,10 @@ def delimited(before_parser: Parser[T1], parser: Parser[T], after_parser: Parser return None _, extra = before_result - result = parser(extra) - if result is None: + parsed_result = parser(extra) + if parsed_result is None: return None - result, extra = result + result, extra = parsed_result after_result = after_parser(extra) if after_result is None: @@ -139,15 +141,15 @@ def delimited(before_parser: Parser[T1], parser: Parser[T], after_parser: Parser def pair(first_parser: Parser[T1], second_parser: Parser[T2]) -> Parser[Tuple[T1, T2]]: def parse(text: str) -> ParseResult[Tuple[T1, T2]]: - first_result = first_parser(text) - if first_result is None: + first_parsed_result = first_parser(text) + if first_parsed_result is None: return None - first_result, extra = first_result + first_result, extra = first_parsed_result - second_result = second_parser(extra) - if second_result is None: + second_parsed_result = second_parser(extra) + if second_parsed_result is None: return None - second_result, extra = second_result + second_result, extra = second_parsed_result return (first_result, second_result), extra return parse @@ -159,30 +161,30 @@ def preceded(before_parser: Parser[T1], parser: Parser[T]) -> Parser[T]: return None _, extra = before_result - result = parser(extra) - if result is None: + parsed_result = parser(extra) + if parsed_result is None: return None - result, extra = result + result, extra = parsed_result return result, extra return parse def separated_pair(first_parser: Parser[T1], between_parser: Parser[T], second_parser: Parser[T2]) -> Parser[Tuple[T1, T2]]: def parse(text: str) -> ParseResult[Tuple[T1, T2]]: - first_result = first_parser(text) - if first_result is None: + first_parsed_result = first_parser(text) + if first_parsed_result is None: return None - first_result, extra = first_result + first_result, extra = first_parsed_result between_result = between_parser(extra) if between_result is None: return None _, extra = between_result - second_result = second_parser(extra) - if second_result is None: + second_parsed_result = second_parser(extra) + if second_parsed_result is None: return None - second_result, extra = second_result + second_result, extra = second_parsed_result return (first_result, second_result), extra return parse -- cgit v1.2.3