我可以在F#中以无点样式访问记录值或对象成员吗?

时间:2016-06-17 15:36:53

标签: f#

采取这个简单的例子:

type Foo = { bar : string }

let bars =
  [ { bar = "abc" }; { bar = "xyz" } ]
    |> List.map (fun x -> x.bar)

// bars is [ "abc"; "xyz" ]

是否可以避免使用无点样式编写lambda?我尝试了下面的变化无济于事:

|> List.map (.bar)

同样的问题适用于对象成员。

open System.IO

let fileNames =
  (DirectoryInfo("c:/x").GetFiles())
    |> Array.map (fun f -> f.FullName)

我希望将其缩短为类似

  |> Array.map (.FullName)

0 个答案:

没有答案