Предположим, у меня есть DU вроде:
type Fruit =
| Apple of string * bool
| Banana of string
| Cherry of string
Затем у меня есть такая коллекция:
fruits : Fruit list
Я хочу вытащить все экземпляры Apple
для выполнениянекоторые вычисления:
// apples is Seq<string * bool>
let apples =
fruits
|> Seq.choose (fun x ->
match x with
| Apple a -> Some a
| _ -> None
)
Мой вопрос: Есть ли более краткий способ написать это?
Что-то вроде:
// Not real code
let apples =
fruits
|> Seq.match Apple