public NativeParser GetNext() { while (_parser.Offset < _endOffset) { byte lowHashcode = _parser.GetUInt8(); if (lowHashcode == _lowHashcode) { return(_parser.GetParserFromRelativeOffset()); } // The entries are sorted by hashcode within the bucket. It allows us to terminate the lookup prematurely. if (lowHashcode > _lowHashcode) { _endOffset = _parser.Offset; // Ensure that extra call to GetNext returns null parser again break; } _parser.SkipInteger(); } return(default);