[英]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.