File: TextEncodedRawTextWriter.cs

package info (click to toggle)
mono 6.8.0.105%2Bdfsg-3.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,284,512 kB
  • sloc: cs: 11,172,132; xml: 2,850,069; ansic: 671,653; cpp: 122,091; perl: 59,366; javascript: 30,841; asm: 22,168; makefile: 20,093; sh: 15,020; python: 4,827; pascal: 925; sql: 859; sed: 16; php: 1
file content (157 lines) | stat: -rw-r--r-- 5,372 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157

//------------------------------------------------------------------------------
// <copyright file="TextWriterGenerator.cxx" company="Microsoft">
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// </copyright>
// <owner current="true" primary="true">Microsoft</owner>
//------------------------------------------------------------------------------

// WARNING: This file is generated and should not be modified directly.  Instead,
// modify TextWriterGenerator.cxx and run gen.bat in the same directory.
// This batch file will execute the following commands:
//
//   cl.exe /C /EP /D _UTF8_TEXT_WRITER TextWriterGenerator.cxx > Utf8TextWriter.cs
//   cl.exe /C /EP /D _ENCODED_TEXT_WRITER TextWriterGenerator.cxx > EncodedTextWriter.cs
//
// Because these two implementations of TextWriter are so similar, the C++ preprocessor
// is used to generate each implementation from one template file, using macros and ifdefs.











using System;
using System.IO;
using System.Text;
//using System.Xml.Query;
using System.Xml.Schema;
using System.Diagnostics;
using System.Globalization;

namespace System.Xml {
    // Concrete implementation of XmlRawWriter interface that serializes text events as encoded
    // text.  All other non-text events are ignored.  The general-purpose TextEncodedRawTextWriter uses the
    // Encoder class to output to any encoding.  The TextUtf8RawTextWriter class combined the encoding
    // operation with serialization in order to achieve better performance.
    // </summary>
    internal class TextEncodedRawTextWriter : XmlEncodedRawTextWriter {


        // Construct an instance of this class that outputs text to the TextWriter interface.
        public TextEncodedRawTextWriter( TextWriter writer, XmlWriterSettings settings ) : base ( writer, settings ) {
        }


        // Construct an instance of this class that serializes to a Stream interface.
        public TextEncodedRawTextWriter( Stream stream, XmlWriterSettings settings ) : base( stream, settings ) {
        }


//
// XmlRawWriter
//
        // Ignore Xml declaration
        internal override void WriteXmlDeclaration( XmlStandalone standalone ) {
        }
        internal override void WriteXmlDeclaration( string xmldecl ) {
        }

        // Ignore DTD
        public override void WriteDocType( string name, string pubid, string sysid, string subset ) {
        }

        // Ignore Elements
        public override void WriteStartElement( string prefix, string localName, string ns ) {
        }

        internal override void WriteEndElement( string prefix, string localName, string ns ) {
        }

        internal override void WriteFullEndElement( string prefix, string localName, string ns ) {
        }

        internal override void StartElementContent() {
        }

        // Ignore attributes
        public override void WriteStartAttribute( string prefix, string localName, string ns ) {
            base.inAttributeValue = true;
        }

        public override void WriteEndAttribute() {
            base.inAttributeValue = false;
        }

        // Ignore namespace declarations
        internal override void WriteNamespaceDeclaration( string prefix, string ns ) {
        }

        internal override bool SupportsNamespaceDeclarationInChunks {
            get {
                return false;
            }
        }

        // Output content of CDATA sections as plain text without escaping
        public override void WriteCData( string text ) {
            base.WriteRaw( text );
        }

        // Ignore comments
        public override void WriteComment( string text ) {
        }

        // Ignore processing instructions
        public override void WriteProcessingInstruction( string name, string text ) {
        }

        // Ignore entities
        public override void WriteEntityRef( string name ) {
        }
        public override void WriteCharEntity( char ch ) {
        }
        public override void WriteSurrogateCharEntity( char lowChar, char highChar ) {
        }

        // Output text content without any escaping; ignore attribute values
        public override void WriteWhitespace( string ws ) {
            if ( !base.inAttributeValue ) {
                base.WriteRaw( ws  );
            }
        }

        // Output text content without any escaping; ignore attribute values
        public override void WriteString( string textBlock ) {
            if ( !base.inAttributeValue ) {
                base.WriteRaw( textBlock );
            }
        }

        // Output text content without any escaping; ignore attribute values
        public override void WriteChars( char[] buffer, int index, int count ) {
            if ( !base.inAttributeValue ) {
                base.WriteRaw( buffer, index, count );
            }
        }

        // Output text content without any escaping; ignore attribute values
        public override void WriteRaw( char[] buffer, int index, int count ) {
            if ( !base.inAttributeValue ) {
                base.WriteRaw( buffer, index, count );
            }
        }

        // Output text content without any escaping; ignore attribute values
        public override void WriteRaw( string data ) {
            if ( !base.inAttributeValue ) {
                base.WriteRaw( data );
            }
        }
    }
}