!7 !include #1031040 // CompactHashMap - version using only one array static new CompactHashMap map1; static new HashMap map2; p { check(); repeat 100 { repeat 10 { putInTwoMaps(map1, map2, aGlobalID(), aGlobalID()); } removeFromTwoMaps(map1, map2, random(keys(map2))); check(); } printObjectLayout(map1); print("Size: " + n2(deepObjectSize(map1)) + " for " + nElements(map1) + " [table size: " + l(map1.table) + "]"); print("OK!"); } svoid check { assertEqualsVerbose(map2.size(), map1.size()); assertEquals(sorted(keys(map2)), sorted(keys(map1))); assertEquals(sorted(values(map2)), sorted(values(map1))); for (S key : keys(map1)) assertEquals(map2.get(key), map1.get(key)); assertNull(map1.get("unknown")); }