【发布时间】:2012-06-12 04:26:23
【问题描述】:
我正在尝试使用 OR 模式,如 here 所述:
let foo = function
| Some (0, x) when x > 0 | None -> "bar"
| _ -> "baz"
但是,这会导致编译器错误:
错误 FS0010:意外符号“|”在模式匹配中。预期'->' 或其他令牌。
我做错了什么?和when守卫有关系吗?
【问题讨论】:
-
谢谢,正在找这个。奇怪的是它没有被问太多。 Scala 更优雅地做到了这一点。
标签: f# pattern-matching