Utilizes WeakRef object to enable iteration with weak reference map.
Required ES6 & WeakRef, WeakMap, WeakSet objects available in runtime;
Inspired by:
Usage:
final map = new IterableWeakMap<MyObject, AnyType>();
- Best performance with keyIterator
for (key in map.keyIterator())
- Extra
get()
overhead for value iterator
for (value in map)
- Extra
get()
and arbitrarty key/value pair/array object overhead for key/value iterator
for (key => value in map)
map.forEach(...)
map.find(...) // can be halted
Usage:
final set = new IterableWeakSet<MyObject>();
- Best performance with keyIterator
for (key in set)
- Extra arbitrarty key/value pair/array object overhead for key/value iterator
for (key => value in set)
set.forEach(...)
set.find(...) // can be halted
Primitive unit tests are available to run in browser console. Execute haxe text.hxml
and open src/test/resources/index.html in browser.
- update version in haxelib.json
- commit
- navigate to
src/main/haxe
- execute
haxelib submit
, enter package "." if requested