Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReadComment()

void System.Xml.XmlUTF8TextReader.ReadComment ( )
inlineprivate

Definition at line 580 of file XmlUTF8TextReader.cs.

581 {
582 base.BufferReader.SkipByte();
583 if (base.BufferReader.GetByte() != 45)
584 {
585 XmlExceptionHelper.ThrowTokenExpected(this, "--", (char)base.BufferReader.GetByte());
586 }
587 base.BufferReader.SkipByte();
588 int offset = base.BufferReader.Offset;
589 while (true)
590 {
591 byte @byte = base.BufferReader.GetByte();
592 if (@byte != 45)
593 {
594 if ((s_charType[@byte] & 0x40) == 0)
595 {
596 if (@byte == 239)
597 {
598 ReadNonFFFE();
599 }
600 else
601 {
602 XmlExceptionHelper.ThrowInvalidXml(this, @byte);
603 }
604 }
605 else
606 {
607 base.BufferReader.SkipByte();
608 }
609 continue;
610 }
611 int offset2;
612 byte[] buffer = base.BufferReader.GetBuffer(3, out offset2);
613 if (buffer[offset2] == 45 && buffer[offset2 + 1] == 45)
614 {
615 if (buffer[offset2 + 2] == 62)
616 {
617 break;
618 }
619 XmlExceptionHelper.ThrowXmlException(this, new XmlException(System.SR.XmlInvalidCommentChars));
620 }
621 base.BufferReader.SkipByte();
622 }
624 MoveToComment().Value.SetValue(ValueHandleType.UTF8, offset, length);
625 base.BufferReader.Advance(3);
626 }
static string XmlInvalidCommentChars
Definition SR.cs:420
Definition SR.cs:7
void SetValue(ValueHandleType type)
XmlCommentNode MoveToComment()
static readonly byte[] s_charType

References System.buffer, System.Xml.Dictionary, System.length, System.Xml.XmlBaseReader.MoveToComment(), System.offset, System.Xml.XmlUTF8TextReader.ReadNonFFFE(), System.Xml.XmlUTF8TextReader.s_charType, System.Xml.ValueHandle.SetValue(), System.Xml.XmlExceptionHelper.ThrowInvalidXml(), System.Xml.XmlExceptionHelper.ThrowTokenExpected(), System.Xml.XmlExceptionHelper.ThrowXmlException(), System.Xml.XmlBaseReader.XmlNode.Value, System.Xml.XmlException, and System.SR.XmlInvalidCommentChars.

Referenced by System.Xml.XmlUTF8TextReader.Read().