Sur*_*tor 12 ocaml hashtable list
有没有办法将哈希表转换为OCaml中的(键,对)值列表?
我知道,给定哈希表ht我们可以做到
BatList.of_enum (BatHashtbl.enum ht)
使用电池库.这会将表转换为枚举,然后将枚举转换为列表.但我正在寻找一种不使用电池库的解决方案.在标准的OCaml Hashtbl模块中,似乎没有一种方法可以将对提取为列表或将其功能组合以实现此目的的方式.有什么建议?
Pas*_*uoq 30
在标准的OCaml Hashtbl模块中似乎没有......
当然有!
val fold : ('a -> 'b -> 'c -> 'c) -> ('a, 'b) t -> 'c -> 'c
所以,使用:
fun h -> Hashtbl.fold (fun k v acc -> (k, v) :: acc) h []