public bool Equals([NotNullWhen(true)] PrefixHandle?prefix2)
{
if (prefix2 is null)
{
return(false);
}
PrefixHandleType type1 = _type;
PrefixHandleType type2 = prefix2._type;
if (type1 != type2)
{
return(false);
}
if (type1 != PrefixHandleType.Buffer)
{
return(true);
}
if (_bufferReader == prefix2._bufferReader)
{
return(_bufferReader.Equals2(_offset, _length, prefix2._offset, prefix2._length));
}
else
{
return(_bufferReader.Equals2(_offset, _length, prefix2._bufferReader, prefix2._offset, prefix2._length));
}
}