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

◆ AddConformanceWrapper()

XmlReader System.Xml.XmlReaderSettings.AddConformanceWrapper ( XmlReader baseReader)
inlinepackage

Definition at line 552 of file XmlReaderSettings.cs.

553 {
554 XmlReaderSettings settings = baseReader.Settings;
555 bool checkCharacters = false;
556 bool ignoreWhitespace = false;
557 bool ignoreComments = false;
558 bool ignorePis = false;
559 DtdProcessing dtdProcessing = (DtdProcessing)(-1);
560 bool flag = false;
561 if (settings == null)
562 {
563 if (_conformanceLevel != 0 && _conformanceLevel != XmlReader.GetV1ConformanceLevel(baseReader))
564 {
566 }
567 XmlTextReader xmlTextReader = baseReader as XmlTextReader;
568 if (xmlTextReader == null && baseReader is XmlValidatingReader xmlValidatingReader)
569 {
570 xmlTextReader = (XmlTextReader)xmlValidatingReader.Reader;
571 }
573 {
574 WhitespaceHandling whitespaceHandling = WhitespaceHandling.All;
575 if (xmlTextReader != null)
576 {
577 whitespaceHandling = xmlTextReader.WhitespaceHandling;
578 }
579 if (whitespaceHandling == WhitespaceHandling.All)
580 {
581 ignoreWhitespace = true;
582 flag = true;
583 }
584 }
585 if (_ignoreComments)
586 {
587 ignoreComments = true;
588 flag = true;
589 }
590 if (_ignorePIs)
591 {
592 ignorePis = true;
593 flag = true;
594 }
595 DtdProcessing dtdProcessing2 = DtdProcessing.Parse;
596 if (xmlTextReader != null)
597 {
598 dtdProcessing2 = xmlTextReader.DtdProcessing;
599 }
600 if ((_dtdProcessing == DtdProcessing.Prohibit && dtdProcessing2 != 0) || (_dtdProcessing == DtdProcessing.Ignore && dtdProcessing2 == DtdProcessing.Parse))
601 {
603 flag = true;
604 }
605 }
606 else
607 {
608 if (_conformanceLevel != settings.ConformanceLevel && _conformanceLevel != 0)
609 {
611 }
612 if (_checkCharacters && !settings.CheckCharacters)
613 {
614 checkCharacters = true;
615 flag = true;
616 }
617 if (_ignoreWhitespace && !settings.IgnoreWhitespace)
618 {
619 ignoreWhitespace = true;
620 flag = true;
621 }
622 if (_ignoreComments && !settings.IgnoreComments)
623 {
624 ignoreComments = true;
625 flag = true;
626 }
627 if (_ignorePIs && !settings.IgnoreProcessingInstructions)
628 {
629 ignorePis = true;
630 flag = true;
631 }
632 if ((_dtdProcessing == DtdProcessing.Prohibit && settings.DtdProcessing != 0) || (_dtdProcessing == DtdProcessing.Ignore && settings.DtdProcessing == DtdProcessing.Parse))
633 {
635 flag = true;
636 }
637 }
638 if (flag)
639 {
640 if (baseReader is IXmlNamespaceResolver readerAsNSResolver)
641 {
642 return new XmlCharCheckingReaderWithNS(baseReader, readerAsNSResolver, checkCharacters, ignoreWhitespace, ignoreComments, ignorePis, dtdProcessing);
643 }
645 }
646 return baseReader;
647 }
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string Xml_IncompatibleConformanceLevel
Definition SR.cs:202
Definition SR.cs:7

References System.Xml.XmlReaderSettings._checkCharacters, System.Xml.XmlReaderSettings._conformanceLevel, System.Xml.XmlReaderSettings._dtdProcessing, System.Xml.XmlReaderSettings._ignoreComments, System.Xml.XmlReaderSettings._ignorePIs, System.Xml.XmlReaderSettings._ignoreWhitespace, System.Xml.XmlReaderSettings.CheckCharacters, System.Xml.XmlReaderSettings.ConformanceLevel, System.Xml.Dictionary, System.Xml.XmlReaderSettings.DtdProcessing, System.SR.Format(), System.Xml.XmlReader.GetV1ConformanceLevel(), System.Xml.XmlReaderSettings.IgnoreComments, System.Xml.XmlReaderSettings.IgnoreProcessingInstructions, System.Xml.XmlReaderSettings.IgnoreWhitespace, and System.SR.Xml_IncompatibleConformanceLevel.

Referenced by System.Xml.XmlReaderSettings.AddValidationAndConformanceInternal(), and System.Xml.XmlReaderSettings.AddValidationInternal().