小编Gie*_* B.的帖子

有没有办法用F#在类型约束中定义新类型参数?

我似乎无法找到一种方法来做这样的事情:

type Instance<'Aggregate when 'Aggregate :> Aggregate.T<'State,'Event,'Failure>> = {
  ...
  Aggregate: 'Aggregate
  CurrentState: 'State
  ...
}
Run Code Online (Sandbox Code Playgroud)

请注意,我想:

  • 首先在类型约束中定义类型参数
  • 定义类型时使用type参数

当然,这不会编译,因为'State没有定义.还有其他方法可以在保留实例含义的同时执行此操作吗?

我想到了一些简单的方法来做到这一点,但它们都失去了意义.例如Instance<'State,'Event,'Failure>并不完全相同Instance<'Aggregate>.

f# type-constraints

3
推荐指数
1
解决办法
75
查看次数

标签 统计

f# ×1

type-constraints ×1