66import sysconfig
77import tempfile
88import tokenize
9- from typing import IO , Any , Dict , List , Optional , Set , Tuple
9+ from typing import IO , Any
1010
1111from pegen .c_generator import CParserGenerator
1212from pegen .grammar import Grammar
1818
1919MOD_DIR = pathlib .Path (__file__ ).resolve ().parent
2020
21- TokenDefinitions = Tuple [ Dict [int , str ], Dict [str , int ], Set [str ]]
21+ TokenDefinitions = tuple [ dict [int , str ], dict [str , int ], set [str ]]
2222Incomplete = Any # TODO: install `types-setuptools` and remove this alias
2323
2424
25- def get_extra_flags (compiler_flags : str , compiler_py_flags_nodist : str ) -> List [str ]:
25+ def get_extra_flags (compiler_flags : str , compiler_py_flags_nodist : str ) -> list [str ]:
2626 flags = sysconfig .get_config_var (compiler_flags )
2727 py_flags_nodist = sysconfig .get_config_var (compiler_py_flags_nodist )
2828 if flags is None or py_flags_nodist is None :
@@ -71,11 +71,11 @@ def fixup_build_ext(cmd: Incomplete) -> None:
7171
7272def compile_c_extension (
7373 generated_source_path : str ,
74- build_dir : Optional [ str ] = None ,
74+ build_dir : str | None = None ,
7575 verbose : bool = False ,
7676 keep_asserts : bool = True ,
7777 disable_optimization : bool = False ,
78- library_dir : Optional [ str ] = None ,
78+ library_dir : str | None = None ,
7979) -> pathlib .Path :
8080 """Compile the generated source for a parser generator into an extension module.
8181
@@ -93,11 +93,10 @@ def compile_c_extension(
9393 """
9494 import setuptools .command .build_ext
9595 import setuptools .logging
96-
97- from setuptools import Extension , Distribution
98- from setuptools .modified import newer_group
96+ from setuptools import Distribution , Extension
9997 from setuptools ._distutils .ccompiler import new_compiler
10098 from setuptools ._distutils .sysconfig import customize_compiler
99+ from setuptools .modified import newer_group
101100
102101 if verbose :
103102 setuptools .logging .set_threshold (logging .DEBUG )
@@ -241,7 +240,7 @@ def compile_c_extension(
241240
242241def build_parser (
243242 grammar_file : str , verbose_tokenizer : bool = False , verbose_parser : bool = False
244- ) -> Tuple [Grammar , Parser , Tokenizer ]:
243+ ) -> tuple [Grammar , Parser , Tokenizer ]:
245244 with open (grammar_file ) as file :
246245 tokenizer = Tokenizer (tokenize .generate_tokens (file .readline ), verbose = verbose_tokenizer )
247246 parser = GrammarParser (tokenizer , verbose = verbose_parser )
@@ -292,7 +291,7 @@ def build_c_generator(
292291 keep_asserts_in_extension : bool = True ,
293292 skip_actions : bool = False ,
294293) -> ParserGenerator :
295- with open (tokens_file , "r" ) as tok_file :
294+ with open (tokens_file ) as tok_file :
296295 all_tokens , exact_tok , non_exact_tok = generate_token_definitions (tok_file )
297296 with open (output_file , "w" ) as file :
298297 gen : ParserGenerator = CParserGenerator (
@@ -333,7 +332,7 @@ def build_c_parser_and_generator(
333332 verbose_c_extension : bool = False ,
334333 keep_asserts_in_extension : bool = True ,
335334 skip_actions : bool = False ,
336- ) -> Tuple [Grammar , Parser , Tokenizer , ParserGenerator ]:
335+ ) -> tuple [Grammar , Parser , Tokenizer , ParserGenerator ]:
337336 """Generate rules, C parser, tokenizer, parser generator for a given grammar
338337
339338 Args:
@@ -373,7 +372,7 @@ def build_python_parser_and_generator(
373372 verbose_tokenizer : bool = False ,
374373 verbose_parser : bool = False ,
375374 skip_actions : bool = False ,
376- ) -> Tuple [Grammar , Parser , Tokenizer , ParserGenerator ]:
375+ ) -> tuple [Grammar , Parser , Tokenizer , ParserGenerator ]:
377376 """Generate rules, python parser, tokenizer, parser generator for a given grammar
378377
379378 Args:
0 commit comments