From ad78c4089cefefa04d4e53ae4ad4f94ef973deb2 Mon Sep 17 00:00:00 2001 From: Nicolas Kruse Date: Thu, 27 Nov 2025 17:19:25 +0100 Subject: [PATCH] type annotations for iif function fixed --- src/copapy/_basic_types.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/copapy/_basic_types.py b/src/copapy/_basic_types.py index 915dcef..1d8ce67 100644 --- a/src/copapy/_basic_types.py +++ b/src/copapy/_basic_types.py @@ -322,9 +322,11 @@ def iif(expression: variable[Any], true_result: unifloat, false_result: unifloat @overload def iif(expression: float | int, true_result: TNum, false_result: TNum) -> TNum: ... @overload -def iif(expression: float | int, true_result: TNum, false_result: variable[TNum]) -> variable[TNum]: ... +def iif(expression: float | int, true_result: TNum | variable[TNum], false_result: variable[TNum]) -> variable[TNum]: ... @overload def iif(expression: float | int, true_result: variable[TNum], false_result: TNum | variable[TNum]) -> variable[TNum]: ... +@overload +def iif(expression: float | int | variable[Any], true_result: TNum | variable[TNum], false_result: TNum | variable[TNum]) -> variable[TNum] | TNum: ... def iif(expression: Any, true_result: Any, false_result: Any) -> Any: allowed_type = (variable, int, float) assert isinstance(true_result, allowed_type) and isinstance(false_result, allowed_type), "Result type not supported"