[英]Pattern matching in let binding in F#
我想要做:
let Some(x) = bar in ...
但除非我這樣做,否則我不能這樣做
let Some(x) as idontcare = bar in ...
有沒有更好的方式說“我不關心整個模式,只是匹配內部”
(我會使用_
但不解析所以我使用__
代替)
是的,我知道這是部分的,我只是在做一個快速的腳本。
編輯:這只是一個內置和類型的例子,所以Option.get
不是通用的; 另外我希望它像Haskell let-bindings一樣內聯。
let Some(x) = bar
定義一個新函數Some
,遮蔽現有構造函數。 相反,你想要:
let (Some(x)) = bar
你可以使用match
:
match bar with | Some(x) -> ...
如果你想特別匹配一個選項,你可以使用Option.get
:
bar |> Option.get |> ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.