为什么我们不能使用泛型类型参数参数仲裁?

时间:2018-09-28 05:48:38

标签: typescript generics

我一直在思考为什么长时间内通用参数定义不能为仲裁长度。例如,如何提取某些struct类型对象的diff属性后跟

type Type<A,B> = Diff<A,B>
type Type<A,B,C> =Type<A,Type<B,C>>
type Type<A,B,C,D> =Type<A,Type<B,C,D>>

对我来说,这个伪代码看起来并非不可能

type Type<T,...U[]: U extends unknown> = Type<T,...U>

如果我们区分数组和单元类型,但是很长一段时间没有实现。谁能告诉我为什么?我希望编译器可能会遇到非身份问题,并通过数学证明这一点。

0 个答案:

没有答案