Это не совсем мой вариант использования, но он похож. Предположим, я хочу определить две аннотации ввода:
Matrix = np.ndarray
Vector = np.ndarray
Теперь я хочу, чтобы потенциальная программа проверки типов жаловалась, когда я передаю Matrix
функции, которая принимает Vector
:
def f(x: Vector):
...
m: Matrix = ...
f(m) # Bad!
Как пометить эти типы как несовместимые?