Xerces-C++: XMLFormatter.hpp Source File (original) (raw)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22#if !defined(XERCESC_INCLUDE_GUARD_XMLFORMATTER_HPP)
23#define XERCESC_INCLUDE_GUARD_XMLFORMATTER_HPP
24
26
28
31
42{
43public:
44
45
46
125 {
126 NoEscapes
127 , StdEscapes
128 , AttrEscapes
129 , CharEscapes
130
131
132 , EscapeFlags_Count
133 , DefaultEscape = 999
135
153 {
154 UnRep_Fail
155 , UnRep_CharRef
156 , UnRep_Replace
157
158 , DefaultUnRep = 999
161
162
163
164
165
178 (
179 const XMLCh* const outEncoding
180 , const XMLCh* const docVersion
182 , const EscapeFlags escapeFlags = NoEscapes
183 , const UnRepFlags unrepFlags = UnRep_Fail
185 );
186
188 (
189 const char* const outEncoding
190 , const char* const docVersion
192 , const EscapeFlags escapeFlags = NoEscapes
193 , const UnRepFlags unrepFlags = UnRep_Fail
195 );
196
198 (
199 const XMLCh* const outEncoding
201 , const EscapeFlags escapeFlags = NoEscapes
202 , const UnRepFlags unrepFlags = UnRep_Fail
204 );
205
207 (
208 const char* const outEncoding
210 , const EscapeFlags escapeFlags = NoEscapes
211 , const UnRepFlags unrepFlags = UnRep_Fail
213 );
214
217
218
219
220
221
232 (
233 const XMLCh* const toFormat
235 , const EscapeFlags escapeFlags = DefaultEscape
236 , const UnRepFlags unrepFlags = DefaultUnRep
237 );
238
243 (
244 const XMLCh* const toFormat
245 );
246
248 (
249 const XMLCh toFormat
250 );
251
254
256
257
258
259
266 const XMLCh* getEncodingName() const;
267
271 inline const XMLTranscoder* getTranscoder() const;
272
277
279
280
281
282
288 void setEscapeFlags
289 (
291 );
292
296 void setUnRepFlags
297 (
299 );
300
306 (
308 );
309
315 (
317 );
319
320
321
322
329
335
336private :
337
338
339
343
344
345
346
347
348 enum Constants
349 {
350 kTmpBufSize = 16 * 1024
351 };
352
353
354
355
356
359 const XMLCh * stdRef);
360
361 void writeCharRef(const XMLCh &toWrite);
362 void writeCharRef(XMLSize_t toWrite);
363
365 , const XMLCh toCheck);
366
367
370 const UnRepFlags unrepFlags);
371
372 void specialFormat
373 (
374 const XMLCh* const toFormat
376 , const EscapeFlags escapeFlags
377 );
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421 EscapeFlags fEscapeFlags;
422 XMLCh* fOutEncoding;
424 UnRepFlags fUnRepFlags;
426 XMLByte fTmpBuf[kTmpBufSize + 4];
437 bool fIsXML11;
439};
440
441
443{
444public:
445
446
447
449
450
451
452
453
455 (
456 const XMLByte* const toWrite
459 ) = 0;
460
462
463
464protected :
465
466
467
469
470private:
471
472
473
476};
477
478
479
480
481
483{
484 return fOutEncoding;
485}
486
488{
489 return fXCoder;
490}
491
493{
494 return fXCoder;
495}
496
497
498
499
501{
502 fEscapeFlags = newFlags;
503}
504
506{
507 fUnRepFlags = newFlags;
508}
509
510
512{
513 fEscapeFlags = newFlags;
514 return *this;
515}
516
518{
519 fUnRepFlags = newFlags;
520 return *this;
521}
522
523
524
525
527{
528 return fEscapeFlags;
529}
530
532{
533 return fUnRepFlags;
534}
535
537
538#endif
#define XMLPARSER_EXPORT
Definition XercesDefs.hpp:163
#define XERCES_CPP_NAMESPACE_BEGIN
Definition XercesDefs.hpp:112
unsigned char XMLByte
Definition XercesDefs.hpp:65
#define XERCES_CPP_NAMESPACE_END
Definition XercesDefs.hpp:113
size_t XMLSize_t
Definition Xerces_autoconf_config.hpp:112
char16_t XMLCh
Definition Xerces_autoconf_config.hpp:120
Configurable memory manager.
Definition MemoryManager.hpp:40
Definition XMLFormatter.hpp:443
virtual void flush()
Definition XMLFormatter.hpp:461
virtual ~XMLFormatTarget()
Definition XMLFormatter.hpp:448
virtual void writeChars(const XMLByte *const toWrite, const XMLSize_t count, XMLFormatter *const formatter)=0
XMLFormatTarget()
Definition XMLFormatter.hpp:468
This class provides the basic formatting capabilities that are required to turn the Unicode based XML...
Definition XMLFormatter.hpp:42
void formatBuf(const XMLCh *const toFormat, const XMLSize_t count, const EscapeFlags escapeFlags=DefaultEscape, const UnRepFlags unrepFlags=DefaultUnRep)
void setEscapeFlags(const EscapeFlags newFlags)
Definition XMLFormatter.hpp:500
const XMLCh * getEncodingName() const
Definition XMLFormatter.hpp:482
EscapeFlags getEscapeFlags() const
Definition XMLFormatter.hpp:526
EscapeFlags
EscapeFlags - Different styles of escape flags to control various formatting.
Definition XMLFormatter.hpp:125
XMLFormatter(const XMLCh *const outEncoding, XMLFormatTarget *const target, const EscapeFlags escapeFlags=NoEscapes, const UnRepFlags unrepFlags=UnRep_Fail, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
UnRepFlags
UnRepFlags.
Definition XMLFormatter.hpp:153
XMLFormatter(const char *const outEncoding, XMLFormatTarget *const target, const EscapeFlags escapeFlags=NoEscapes, const UnRepFlags unrepFlags=UnRep_Fail, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
void writeBOM(const XMLByte *const toFormat, const XMLSize_t count)
UnRepFlags getUnRepFlags() const
Definition XMLFormatter.hpp:531
void setUnRepFlags(const UnRepFlags newFlags)
Definition XMLFormatter.hpp:505
XMLFormatter(const XMLCh *const outEncoding, const XMLCh *const docVersion, XMLFormatTarget *const target, const EscapeFlags escapeFlags=NoEscapes, const UnRepFlags unrepFlags=UnRep_Fail, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
const XMLTranscoder * getTranscoder() const
Definition XMLFormatter.hpp:487
XMLFormatter & operator<<(const XMLCh *const toFormat)
XMLFormatter(const char *const outEncoding, const char *const docVersion, XMLFormatTarget *const target, const EscapeFlags escapeFlags=NoEscapes, const UnRepFlags unrepFlags=UnRep_Fail, MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager)
static MemoryManager * fgMemoryManager
The configurable memory manager.
Definition PlatformUtils.hpp:121
XMLTranscoder is for transcoding non-local code page encodings, i.e.
Definition TransService.hpp:216
This class makes it possible to override the C++ memory management by adding new/delete operators to ...
Definition XMemory.hpp:41