From dfd7ceecd8aeade9587696645d43803c5d1f559c Mon Sep 17 00:00:00 2001 From: "Robert T. McGibbon" Date: Mon, 11 Jan 2016 13:20:59 -0800 Subject: [PATCH] Add type annotations for json.load(s) --- stdlib/2.7/json.pyi | 23 ++++++++++++++++++++--- stdlib/3/json.pyi | 22 +++++++++++++++++++--- 2 files changed, 39 insertions(+), 6 deletions(-) diff --git a/stdlib/2.7/json.pyi b/stdlib/2.7/json.pyi index c5804b4ff..f31937109 100644 --- a/stdlib/2.7/json.pyi +++ b/stdlib/2.7/json.pyi @@ -1,4 +1,4 @@ -from typing import Any, IO, Optional, Tuple, Callable +from typing import Any, IO, Optional, Tuple, Callable, Dict, List class JSONDecodeError(object): def dumps(self, obj: Any) -> str: ... @@ -33,5 +33,22 @@ def dump(obj: Any, sort_keys: bool = ..., **kwds: Any) -> None: ... -def loads(s: str) -> Any: ... -def load(fp: IO[str]) -> Any: ... +def loads(s: str, + encoding: Any = ..., + cls: Any = ..., + object_hook: Callable[[Dict], Any] = ..., + parse_float: Optional[Callable[[str], Any]] = ..., + parse_int: Optional[Callable[[str], Any]] = ..., + parse_constant: Optional[Callable[[str], Any]] = ..., + object_pairs_hook: Optional[Callable[[List[Tuple[Any, Any]]], Any]] = ..., + **kwds: Any) -> Any: ... + +def load(fp: IO[str], + encoding: Optional[str] = ..., + cls: Any = ..., + object_hook: Callable[[Dict], Any] = ..., + parse_float: Optional[Callable[[str], Any]] = ..., + parse_int: Optional[Callable[[str], Any]] = ..., + parse_constant: Optional[Callable[[str], Any]] = ..., + object_pairs_hook: Optional[Callable[[List[Tuple[Any, Any]]], Any]] = ..., + **kwds: Any) -> Any: ... diff --git a/stdlib/3/json.pyi b/stdlib/3/json.pyi index f5f1f416b..aec903f55 100644 --- a/stdlib/3/json.pyi +++ b/stdlib/3/json.pyi @@ -1,4 +1,4 @@ -from typing import Any, IO, Optional, Tuple, Callable +from typing import Any, IO, Optional, Tuple, Callable, Dict, List class JSONDecodeError(object): def dumps(self, obj: Any) -> str: ... @@ -31,5 +31,21 @@ def dump(obj: Any, sort_keys: bool = ..., **kwds: Any) -> None: ... -def loads(s: str) -> Any: ... -def load(fp: IO[str]) -> Any: ... +def loads(s: str, + encoding: Any = ..., # ignored and deprecated + cls: Any = ..., + object_hook: Callable[[Dict], Any] = ..., + parse_float: Optional[Callable[[str], Any]] = ..., + parse_int: Optional[Callable[[str], Any]] = ..., + parse_constant: Optional[Callable[[str], Any]] = ..., + object_pairs_hook: Optional[Callable[[List[Tuple[Any, Any]]], Any]] = ..., + **kwds: Any) -> Any: ... + +def load(fp: IO[str], + cls: Any = ..., + object_hook: Callable[[Dict], Any] = ..., + parse_float: Optional[Callable[[str], Any]] = ..., + parse_int: Optional[Callable[[str], Any]] = ..., + parse_constant: Optional[Callable[[str], Any]] = ..., + object_pairs_hook: Optional[Callable[[List[Tuple[Any, Any]]], Any]] = ..., + **kwds: Any) -> Any: ...