codekingpro/portable-devtools
114k
1from collections.abc import Mapping
2from typing import Any, SupportsIndex, assert_type
3
4import numpy as np
5import numpy.typing as npt
6
7def mode_func(
8 ar: npt.NDArray[np.number],
9 width: tuple[int, int],
10 iaxis: SupportsIndex,
11 kwargs: Mapping[str, Any],
12) -> None: ...
13
14AR_i8: npt.NDArray[np.int64]
15AR_f8: npt.NDArray[np.float64]
16AR_LIKE: list[int]
17
18assert_type(np.pad(AR_i8, (2, 3), "constant"), npt.NDArray[np.int64])
19assert_type(np.pad(AR_LIKE, (2, 3), "constant"), npt.NDArray[Any])
20
21assert_type(np.pad(AR_f8, (2, 3), mode_func), npt.NDArray[np.float64])
22assert_type(np.pad(AR_f8, (2, 3), mode_func, a=1, b=2), npt.NDArray[np.float64])
23
24assert_type(np.pad(AR_i8, {-1: (2, 3)}), npt.NDArray[np.int64])
25assert_type(np.pad(AR_i8, {-2: 4}), npt.NDArray[np.int64])
26pad_width: dict[int, int | tuple[int, int]] = {-1: (2, 3), -2: 4}
27assert_type(np.pad(AR_i8, pad_width), npt.NDArray[np.int64])
28 