From b94e8e16ae5a88ae075438fd0d2a5971284ecde7 Mon Sep 17 00:00:00 2001 From: "neiljp (Neil Pilgrim)" Date: Tue, 22 Aug 2017 12:43:13 -0700 Subject: [PATCH] Type annotations: Image.py: Initial annotation for expression analyzer. --- PIL/Image.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/PIL/Image.py b/PIL/Image.py index fa325b90b..464bc1244 100644 --- a/PIL/Image.py +++ b/PIL/Image.py @@ -475,21 +475,26 @@ def _getencoder(mode, encoder_name, args, extra=()): # Simple expression analyzer def coerce_e(value): + # type: (Any) -> _E ## FIXME TYPING: As detailed as possible? return value if isinstance(value, _E) else _E(value) class _E(object): def __init__(self, data): + # type: (Any) -> None ## FIXME TYPING: As detailed as possible? self.data = data def __add__(self, other): + # type: (Any) -> _E ## FIXME TYPING: As detailed as possible? return _E((self.data, "__add__", coerce_e(other).data)) def __mul__(self, other): + # type: (Any) -> _E ## FIXME TYPING: As detailed as possible? return _E((self.data, "__mul__", coerce_e(other).data)) def _getscaleoffset(expr): + # type: (Any) -> Tuple[Any, Any] ## FIXME TYPING: Can be improved? stub = ["stub"] data = expr(_E(stub)).data try: