protected Iterator<K> createKeySetIterator() {
        if (size() == 0) {
            return EmptyIterator.INSTANCE;
        }
        return new KeySetIterator<K, V>(this);
    }
Creates a key set iterator.
Subclasses can override this to return iterators with different properties.

@return the keySet iterator
jphp-runtime/src/php/runtime/common/collections/map/AbstractHashedMap.java