我正在创建一个接收电子邮件并将其转换为 json 的程序。为了学习函数式语言,我认为这是学习 F# 的好机会。所以首先我想要一个消息类,然后可以轻松地将其序列化为 json。这个类将有一些可以为空的成员。由于这些可选参数,我使用以下格式

type Email(from:string, recipient:string, ?cc:string .........) =
    member x.From = from
    member x.Recipient = recipient.....

这个类实际上有很多成员,因为我想存储电子邮件可能包含的每一条信息。发生的情况是,如果我尝试通过将构造函数拆分为多行来自己格式化构造函数,则会收到警告。人们如何使这样一个巨大的构造函数在 f# 中看起来不错?有一个更好的方法吗?

同样,我认为 Visual Studio 对 f# 没有太大帮助,其他人使用什么编写代码?例如,我认为 emacs 有一种模式......

最佳答案

如果所有“换行”参数都从同一列开始,则不应有任何警告。例如:

type Email(from:string, recipient:string,
           ?cc:string) =
    member x.From = from
    member x.Recipient = recipient

(我个人喜欢使用 Visual Studio for F#。我怀疑是否有支持更完整的 IDE。)

关于json - f# 类构造函数格式化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13077088/

10-11 12:28