Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
HtmlUtf8RawTextWriterIndent.cs
Go to the documentation of this file.
1using System.IO;
2
3namespace System.Xml;
4
6{
7 private int _indentLevel;
8
9 private int _endBlockPos;
10
11 private string _indentChars;
12
14
16 : base(stream, settings)
17 {
18 Init(settings);
19 }
20
21 public override void WriteDocType(string name, string pubid, string sysid, string subset)
22 {
23 base.WriteDocType(name, pubid, sysid, subset);
25 }
26
27 public override void WriteStartElement(string prefix, string localName, string ns)
28 {
30 if (ns.Length == 0)
31 {
34 {
36 }
38 _bufBytes[_bufPos++] = 60;
39 }
40 else
41 {
43 if (_endBlockPos == _bufPos)
44 {
46 }
48 _bufBytes[_bufPos++] = 60;
49 if (prefix.Length != 0)
50 {
52 _bufBytes[_bufPos++] = 58;
53 }
54 }
55 RawText(localName);
57 }
58
59 internal override void StartElementContent()
60 {
61 _bufBytes[_bufPos++] = 62;
64 {
68 }
69 else if ((_currentElementProperties & ElementProperties.BLOCK_WS) != 0)
70 {
72 }
73 }
74
75 internal override void WriteEndElement(string prefix, string localName, string ns)
76 {
78 bool flag = (_currentElementProperties & ElementProperties.BLOCK_WS) != 0;
79 if (flag && _endBlockPos == _bufPos && _contentPos != _bufPos)
80 {
82 }
83 base.WriteEndElement(prefix, localName, ns);
84 _contentPos = 0;
85 if (flag)
86 {
88 }
89 }
90
91 public override void WriteStartAttribute(string prefix, string localName, string ns)
92 {
94 {
99 }
100 base.WriteStartAttribute(prefix, localName, ns);
101 }
102
103 protected override void FlushBuffer()
104 {
105 _endBlockPos = ((_endBlockPos == _bufPos) ? 1 : 0);
106 base.FlushBuffer();
107 }
108
109 private void Init(XmlWriterSettings settings)
110 {
111 _indentLevel = 0;
112 _indentChars = settings.IndentChars;
114 }
115
116 private void WriteIndent()
117 {
119 for (int num = _indentLevel; num > 0; num--)
120 {
122 }
123 }
124}
void Push(byte data)
Definition ByteStack.cs:21
HtmlUtf8RawTextWriterIndent(Stream stream, XmlWriterSettings settings)
override void WriteStartElement(string prefix, string localName, string ns)
override void WriteDocType(string name, string pubid, string sysid, string subset)
override void WriteEndElement(string prefix, string localName, string ns)
override void WriteStartAttribute(string prefix, string localName, string ns)
static TernaryTreeReadOnly _elementPropertySearch