OCaml 的选项类型在您的函数可能不返回任何内容的情况下非常有用。但是当我在很多地方使用这个的时候,我发现Some
在None
一个match ... with
.
例如,
let env2 = List.map (fun ((it,ie),v,t) ->
match t with
| Some t -> (v,t)
| None ->
begin
match it with
| Some it -> (v,it)
| None -> failwith "Cannot infer local vars"
end) ls_res in
还有其他方法可以简洁地解构选项类型吗?