我想通过向通用函数分配通用类型来简化通用函数。
首先,我创建了一个Reducer类型:
type Reducer<C, B, R> = (computed: C) => (body: B) => R;
这是我实际上实现Reducer的函数,但是我找不到将这种类型分配给这些函数的方法:
const ignore = <C>(computed: C) => <B>(body: B): B => body;
const assign = <C>(computed: C) => <B>(body: B): C => computed;
const modify = <C>(computed: C) => <B>(body: B): B & C => Object.assign(body, computed);
我想知道是否有一种方法可以为它们分配Reducer类型,和/或通过排除一个公共因素使它们远离重复来简化这些表达式?