]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.osgi/scl/Extras/HashMap.scl
Merge "Workaround for missing selection highlights on SVG diagrams"
[simantics/platform.git] / bundles / org.simantics.scl.osgi / scl / Extras / HashMap.scl
index fae9f3180391626086f234141880459de34a68ef..76ab15c6c384d5f15197c506a70b6021dbcc9aa1 100644 (file)
@@ -1,23 +1,31 @@
-import "StandardLibrary" hiding (contains)\r
-\r
-importJava "gnu.trove.map.hash.THashMap" where\r
-    data T a b\r
-    \r
-    @JavaName "<init>"\r
-    create :: () -> <Proc> T a b\r
-    put :: T a b -> a -> b -> <Proc> Maybe b\r
-    get :: T a b -> a -> <Proc> Maybe b\r
-    @JavaName get\r
-    unsafeGet :: T a b -> a -> <Proc> b\r
-    \r
-    contains :: T a b -> a -> <Proc> Boolean\r
-    size :: T a b -> <Proc> Integer\r
-    \r
-importJava "org.simantics.scl.osgi.map.HashMapUtils" where \r
-    entries :: T a b -> <Proc> [(a,b)]\r
-\r
-fromList :: [(a,b)] -> <Proc> T a b\r
-fromList entries = do\r
-    result = create ()\r
-    for entries (\(k,v) -> do put result k v; ())\r
-    result 
\ No newline at end of file
+module {
+    deprecated = "Use module MMap instead."
+}
+
+import "MMap" as MMap
+
+type T = MMap.T
+
+create :: () -> <Proc> T a b
+create = MMap.create
+
+put :: T a b -> a -> b -> <Proc> Maybe b
+put = MMap.put
+
+get :: T a b -> a -> <Proc> Maybe b
+get = MMap.get
+
+unsafeGet :: T a b -> a -> <Proc> b
+unsafeGet = MMap.unsafeGet
+    
+contains :: T a b -> a -> <Proc> Boolean
+contains = MMap.containsKey
+
+size :: T a b -> <Proc> Integer
+size = MMap.size
+    
+entries :: T a b -> <Proc> [(a,b)]
+entries = MMap.entries
+
+fromList :: [(a,b)] -> <Proc> T a b
+fromList = MMap.fromEntryList