如何在 ocaml 中找到"地图"的大小?我正在使用"Map.Make"函子来创

  • 本文关键字:quot Map Make ocaml 地图 ocaml
  • 更新时间 :
  • 英文 :


我在官方文档中找不到任何sizelen函数。查找地图中元素数量的简单方法是什么:

module M = Map.Make(String)

我正在寻找类似M.size M.empty : 0的东西.

你要找的函数称为cardinal(如集合的基数(。

例:

module M = Map.Make(String)
let m = M.singleton "x" "y"
let () = Printf.printf "%dn" (M.cardinal m)

这将打印1,因为只有一个绑定。

hoogle4ocaml ": 'a t -> int$" | grep -i map

会告诉你:

~/.opam/4.05.0/lib/ocaml/map.mli:    val cardinal: 'a t -> int

参看 https://github.com/UnixJunkie/hoogle_for_ocaml

所以,简短的回答是:

Map.cadinal your_map

PS:是的,OCaml社区仍然非常缺少Haskell社区中的Hoogle。周围有一些黑客,就像我刚刚链接的那个,但我们需要一个严肃的,正常工作,积极维护并在很大程度上由社区审查

最新更新