git.fiddlerwoaroof.com
Browse code

Add empty-hash-table-like

Ed Langley authored on 24/02/2019 06:56:31
Showing 1 changed files
... ...
@@ -1,5 +1,19 @@
1 1
 (in-package #:fwoar.lisputils)
2 2
 
3
+#-sbcl
4
+(defun empty-hash-table-like (hash-table)
5
+  (make-hash-table :test (hash-table-test hash-table)
6
+                   :size (hash-table-size hash-table)
7
+                   :rehash-size (hash-table-rehash-size hash-table)
8
+                   :rehash-threshold (hash-table-rehash-threshold hash-table)))
9
+#sbcl
10
+(defun empty-hash-table-like (hash-table)
11
+  (make-hash-table :test (hash-table-test hash-table)
12
+                   :size (hash-table-size hash-table)
13
+                   :rehash-size (hash-table-rehash-size hash-table)
14
+                   :rehash-threshold (hash-table-rehash-threshold hash-table)
15
+                   :hash-function (sb-impl::hash-table-hash-fun hash-table)
16
+
3 17
 ;; (pick '("a" "b" "c")
4 18
 ;;         { "a": { "b" : { "c" : 3 })
5 19
 ;; =>> 3 t 3 "c"