我在F#的工作,並有一個類型T這幾件事情的區分聯合:能否定義一個函數來判斷一個元素是否是由給定的類型構造函數構造的?
type T =
| A of string * int
| B of int
| C
如果我有一件T名單,我可能要拉出來使用A構建的東西它很容易模式匹配這樣的:
myList
|> List.filter (fun x -> match x with | A(_,_) -> true | _ -> false)
嵌入的比賽是有點冗長,而且也與A.我想的定義保持同步下劃線的數量較小的維修麻煩真的像功能如下:
let constructedFrom (type constructor) (t : T) : bool = something
myList
|> List.filter (constructedFrom A)
有沒有辦法來定義這'constructFrom'功能?
感謝您的回覆。我可能會同時使用'function'關鍵字和'_'來忽略將來的所有參數。 –