关于 f#:可以使用类型提供程序来生成类型扩展吗?

Can a type provider be used to generate a type extension?

我有一个记录类型

1
type Foo = {mutable x:int; mutable y:int}

我想为它自动生成一个 clone 函数:-

1
2
type Foo with
  member m.clone() = {x=m.x;y=m.y}

是否可以使用类型提供程序生成此类型扩展?


不,您不能通过类型提供程序定义 C# 样式的扩展成员或 F# 样式的扩充。

曾尝试为 F# 4.0 提供对提供的 C# 样式扩展成员的支持,但最终被取消。您可以在此处关注该讨论,然后在此处。