ast: parse accepts PathLike filename (#9020)

This commit is contained in:
Shantanu
2022-10-28 11:18:38 -07:00
committed by GitHub
parent 7edad955a2
commit 093c58bfa2

View File

@@ -1,3 +1,4 @@
import os
import sys
from _ast import *
from _typeshed import ReadableBuffer
@@ -159,7 +160,7 @@ if sys.version_info >= (3, 8):
@overload
def parse(
source: str | ReadableBuffer,
filename: str | ReadableBuffer = ...,
filename: str | ReadableBuffer | os.PathLike[Any] = ...,
mode: Literal["exec"] = ...,
*,
type_comments: bool = ...,
@@ -168,7 +169,7 @@ if sys.version_info >= (3, 8):
@overload
def parse(
source: str | ReadableBuffer,
filename: str | ReadableBuffer,
filename: str | ReadableBuffer | os.PathLike[Any],
mode: Literal["eval"],
*,
type_comments: bool = ...,
@@ -177,7 +178,7 @@ if sys.version_info >= (3, 8):
@overload
def parse(
source: str | ReadableBuffer,
filename: str | ReadableBuffer,
filename: str | ReadableBuffer | os.PathLike[Any],
mode: Literal["func_type"],
*,
type_comments: bool = ...,
@@ -186,7 +187,7 @@ if sys.version_info >= (3, 8):
@overload
def parse(
source: str | ReadableBuffer,
filename: str | ReadableBuffer,
filename: str | ReadableBuffer | os.PathLike[Any],
mode: Literal["single"],
*,
type_comments: bool = ...,
@@ -219,7 +220,7 @@ if sys.version_info >= (3, 8):
@overload
def parse(
source: str | ReadableBuffer,
filename: str | ReadableBuffer = ...,
filename: str | ReadableBuffer | os.PathLike[Any] = ...,
mode: str = ...,
*,
type_comments: bool = ...,
@@ -228,17 +229,23 @@ if sys.version_info >= (3, 8):
else:
@overload
def parse(source: str | ReadableBuffer, filename: str | ReadableBuffer = ..., mode: Literal["exec"] = ...) -> Module: ...
def parse(
source: str | ReadableBuffer, filename: str | ReadableBuffer | os.PathLike[Any] = ..., mode: Literal["exec"] = ...
) -> Module: ...
@overload
def parse(source: str | ReadableBuffer, filename: str | ReadableBuffer, mode: Literal["eval"]) -> Expression: ...
def parse(
source: str | ReadableBuffer, filename: str | ReadableBuffer | os.PathLike[Any], mode: Literal["eval"]
) -> Expression: ...
@overload
def parse(source: str | ReadableBuffer, filename: str | ReadableBuffer, mode: Literal["single"]) -> Interactive: ...
def parse(
source: str | ReadableBuffer, filename: str | ReadableBuffer | os.PathLike[Any], mode: Literal["single"]
) -> Interactive: ...
@overload
def parse(source: str | ReadableBuffer, *, mode: Literal["eval"]) -> Expression: ...
@overload
def parse(source: str | ReadableBuffer, *, mode: Literal["single"]) -> Interactive: ...
@overload
def parse(source: str | ReadableBuffer, filename: str | ReadableBuffer = ..., mode: str = ...) -> AST: ...
def parse(source: str | ReadableBuffer, filename: str | ReadableBuffer | os.PathLike[Any] = ..., mode: str = ...) -> AST: ...
if sys.version_info >= (3, 9):
def unparse(ast_obj: AST) -> str: ...