@@ -1744,10 +1744,20 @@ if sys.version_info < (3, 14):
17441744_T = _TypeVar ("_T" , bound = AST )
17451745
17461746if sys .version_info >= (3 , 13 ):
1747+ @overload
1748+ def parse (
1749+ source : _T ,
1750+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
1751+ mode : Literal ["exec" , "eval" , "func_type" , "single" ] = "exec" ,
1752+ * ,
1753+ type_comments : bool = False ,
1754+ feature_version : None | int | tuple [int , int ] = None ,
1755+ optimize : Literal [- 1 , 0 , 1 , 2 ] = - 1 ,
1756+ ) -> _T : ...
17471757 @overload
17481758 def parse (
17491759 source : str | ReadableBuffer ,
1750- filename : str | ReadableBuffer | os .PathLike [Any ] = "<unknown>" ,
1760+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
17511761 mode : Literal ["exec" ] = "exec" ,
17521762 * ,
17531763 type_comments : bool = False ,
@@ -1757,7 +1767,7 @@ if sys.version_info >= (3, 13):
17571767 @overload
17581768 def parse (
17591769 source : str | ReadableBuffer ,
1760- filename : str | ReadableBuffer | os .PathLike [Any ],
1770+ filename : str | bytes | os .PathLike [Any ],
17611771 mode : Literal ["eval" ],
17621772 * ,
17631773 type_comments : bool = False ,
@@ -1767,7 +1777,7 @@ if sys.version_info >= (3, 13):
17671777 @overload
17681778 def parse (
17691779 source : str | ReadableBuffer ,
1770- filename : str | ReadableBuffer | os .PathLike [Any ],
1780+ filename : str | bytes | os .PathLike [Any ],
17711781 mode : Literal ["func_type" ],
17721782 * ,
17731783 type_comments : bool = False ,
@@ -1777,7 +1787,7 @@ if sys.version_info >= (3, 13):
17771787 @overload
17781788 def parse (
17791789 source : str | ReadableBuffer ,
1780- filename : str | ReadableBuffer | os .PathLike [Any ],
1790+ filename : str | bytes | os .PathLike [Any ],
17811791 mode : Literal ["single" ],
17821792 * ,
17831793 type_comments : bool = False ,
@@ -1814,7 +1824,7 @@ if sys.version_info >= (3, 13):
18141824 @overload
18151825 def parse (
18161826 source : str | ReadableBuffer ,
1817- filename : str | ReadableBuffer | os .PathLike [Any ] = "<unknown>" ,
1827+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
18181828 mode : str = "exec" ,
18191829 * ,
18201830 type_comments : bool = False ,
@@ -1823,10 +1833,19 @@ if sys.version_info >= (3, 13):
18231833 ) -> mod : ...
18241834
18251835else :
1836+ @overload
1837+ def parse (
1838+ source : _T ,
1839+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
1840+ mode : Literal ["exec" , "eval" , "func_type" , "single" ] = "exec" ,
1841+ * ,
1842+ type_comments : bool = False ,
1843+ feature_version : None | int | tuple [int , int ] = None ,
1844+ ) -> _T : ...
18261845 @overload
18271846 def parse (
18281847 source : str | ReadableBuffer ,
1829- filename : str | ReadableBuffer | os .PathLike [Any ] = "<unknown>" ,
1848+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
18301849 mode : Literal ["exec" ] = "exec" ,
18311850 * ,
18321851 type_comments : bool = False ,
@@ -1835,7 +1854,7 @@ else:
18351854 @overload
18361855 def parse (
18371856 source : str | ReadableBuffer ,
1838- filename : str | ReadableBuffer | os .PathLike [Any ],
1857+ filename : str | bytes | os .PathLike [Any ],
18391858 mode : Literal ["eval" ],
18401859 * ,
18411860 type_comments : bool = False ,
@@ -1844,7 +1863,7 @@ else:
18441863 @overload
18451864 def parse (
18461865 source : str | ReadableBuffer ,
1847- filename : str | ReadableBuffer | os .PathLike [Any ],
1866+ filename : str | bytes | os .PathLike [Any ],
18481867 mode : Literal ["func_type" ],
18491868 * ,
18501869 type_comments : bool = False ,
@@ -1853,7 +1872,7 @@ else:
18531872 @overload
18541873 def parse (
18551874 source : str | ReadableBuffer ,
1856- filename : str | ReadableBuffer | os .PathLike [Any ],
1875+ filename : str | bytes | os .PathLike [Any ],
18571876 mode : Literal ["single" ],
18581877 * ,
18591878 type_comments : bool = False ,
@@ -1886,7 +1905,7 @@ else:
18861905 @overload
18871906 def parse (
18881907 source : str | ReadableBuffer ,
1889- filename : str | ReadableBuffer | os .PathLike [Any ] = "<unknown>" ,
1908+ filename : str | bytes | os .PathLike [Any ] = "<unknown>" ,
18901909 mode : str = "exec" ,
18911910 * ,
18921911 type_comments : bool = False ,
0 commit comments