public override void WriteEndDocument ()
{
switch (state) {
#if NET_2_0
case WriteState.Error:
#endif
case WriteState.Closed:
case WriteState.Start:
throw StateError ("EndDocument");
}
if (state == WriteState.Attribute)
WriteEndAttribute ();
while (open_count > 0)
WriteEndElement ();
state = WriteState.Start;
is_document_entity = false;
}