summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorpukkamustard <pukkamustard@posteo.net>2022-12-16 13:25:08 +0000
committerJulien Lepiller <julien@lepiller.eu>2022-12-21 22:07:17 +0100
commitbe311533902900f16ff58cc18061ca4522441033 (patch)
tree5b48d2f19c9b3f3344645c76062dafd87c6ec0f6 /gnu
parentcdca7347756e4ae230bbe2d6795451e649bc634e (diff)
downloadguix-be311533902900f16ff58cc18061ca4522441033.tar.gz
gnu: Add ocaml-hmap.
* gnu/packages/ocaml.scm (ocaml-hmap): New variable.

Signed-off-by: Julien Lepiller <julien@lepiller.eu>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/ocaml.scm26
1 files changed, 26 insertions, 0 deletions
diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 1d30eadd92..4a45f5f73b 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -2770,6 +2770,32 @@ architectures and provide a best-effort boxed representation on 32-bit
 architectures.")
     (license license:isc)))
 
+(define-public ocaml-hmap
+  (package
+    (name "ocaml-hmap")
+    (version "0.8.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri "https://erratique.ch/software/hmap/releases/hmap-0.8.1.tbz")
+       (sha256
+    (base32 "10xyjy4ab87z7jnghy0wnla9wrmazgyhdwhr4hdmxxdn28dxn03a"))))
+    (build-system ocaml-build-system)
+    (arguments
+     `(#:build-flags
+       (list "build" "--tests" "true")
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))))
+    (native-inputs (list ocaml-topkg ocamlbuild opam))
+    (home-page "https://erratique.ch/software/hmap")
+    (synopsis "Heterogeneous value maps for OCaml")
+    (description
+     "Hmap provides heterogeneous value maps for OCaml.  These maps bind keys to
+values with arbitrary types.  Keys witness the type of the value they are bound
+to which allows adding and looking up bindings in a type safe manner.")
+    (license license:isc)))
+
 (define-public ocaml-lwt
   (package
     (name "ocaml-lwt")