import nxt.nullable_traits : hasNullValue, isNullable; import nxt.open_hashmap : OpenHashMap; static assert(hasNullValue!Address); static assert(isNullable!Address); OpenHashMap!(Address, Address) m; static assert(m.sizeof == 3*size_t.sizeof); // assure that hole bitmap is not used foreach (const address; 1 .. 0x1000) { const key = address; const value = 2*address; assert(Address(key) !in m); m[Address(key)] = Address(value); assert(m[Address(key)] == Address(value)); assert(Address(key) in m); }