public virtual void WriteAttributes (XmlReader reader, bool defattr)
{
if(reader == null)
throw new ArgumentException("null XmlReader specified.", "reader");
switch (reader.NodeType) {
case XmlNodeType.XmlDeclaration:
WriteAttributeString ("version", reader ["version"]);
if (reader ["encoding"] != null)
WriteAttributeString ("encoding", reader ["encoding"]);
if (reader ["standalone"] != null)
WriteAttributeString ("standalone", reader ["standalone"]);
break;
case XmlNodeType.Element:
if (reader.MoveToFirstAttribute ())
goto case XmlNodeType.Attribute;
break;
case XmlNodeType.Attribute:
do {
WriteAttribute (reader, defattr);
} while (reader.MoveToNextAttribute ());
reader.MoveToElement ();
break;
default:
throw new XmlException("NodeType is not one of Element, Attribute, nor XmlDeclaration.");
}
}