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

◆ Read()

override bool System.Xml.Xsl.Runtime.WhitespaceRuleReader.Read ( )
inline

Definition at line 66 of file WhitespaceRuleReader.cs.

67 {
68 string text = null;
69 _val = null;
70 while (base.Read())
71 {
72 switch (base.NodeType)
73 {
74 case XmlNodeType.Element:
75 if (!base.IsEmptyElement)
76 {
78 _shouldStrip = _wsRules.ShouldStripSpace(base.LocalName, base.NamespaceURI) && base.XmlSpace != XmlSpace.Preserve;
79 }
80 break;
81 case XmlNodeType.EndElement:
83 break;
84 case XmlNodeType.Text:
85 case XmlNodeType.CDATA:
87 {
88 return true;
89 }
90 if (!_shouldStrip)
91 {
92 break;
93 }
94 if (!XmlCharType.IsOnlyWhitespace(base.Value))
95 {
96 if (text != null)
97 {
98 _val = text + base.Value;
99 }
100 _preserveAdjacent = true;
101 return true;
102 }
103 goto case XmlNodeType.Whitespace;
104 case XmlNodeType.Whitespace:
105 case XmlNodeType.SignificantWhitespace:
107 {
108 return true;
109 }
110 if (_shouldStrip)
111 {
112 text = ((text != null) ? (text + base.Value) : base.Value);
113 continue;
114 }
115 break;
116 case XmlNodeType.EndEntity:
117 continue;
118 }
119 _preserveAdjacent = false;
120 return true;
121 }
122 return false;
123 }
void PushBit(bool bit)
Definition BitStack.cs:16
bool ShouldStripSpace(string localName, string namespaceName)

References System.Xml.Xsl.Runtime.WhitespaceRuleReader._preserveAdjacent, System.Xml.Xsl.Runtime.WhitespaceRuleReader._shouldStrip, System.Xml.Xsl.Runtime.WhitespaceRuleReader._stkStrip, System.Xml.Xsl.Runtime.WhitespaceRuleReader._val, System.Xml.Xsl.Runtime.WhitespaceRuleReader._wsRules, System.Xml.Dictionary, System.Xml.XmlCharType.IsOnlyWhitespace(), System.Xml.BitStack.PopBit(), System.Xml.BitStack.PushBit(), System.Xml.Xsl.Runtime.WhitespaceRuleLookup.ShouldStripSpace(), and System.text.