public virtual bool ReadToNextSibling(string name)
{
if (name == null || name.Length == 0)
{
throw XmlConvert.CreateInvalidNameArgumentException(name, nameof(name));
}
// atomize name
name = NameTable.Add(name);
// find the next sibling
XmlNodeType nt;
do
{
if (!SkipSubtree())
{
break;
}
nt = NodeType;
if (nt == XmlNodeType.Element && Ref.Equal(name, Name))
{
return true;
}
} while (nt != XmlNodeType.EndElement && !EOF);
return false;
}