qxml.h
Go to the documentation of this file.
1 /****************************************************************************
2 **
3 **
4 ** Definition of QXmlSimpleReader and related classes.
5 **
6 ** Created : 000518
7 **
8 ** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.
9 **
10 ** This file is part of the XML module of the Qt GUI Toolkit.
11 **
12 ** This file may be distributed under the terms of the Q Public License
13 ** as defined by Trolltech AS of Norway and appearing in the file
14 ** LICENSE.QPL included in the packaging of this file.
15 **
16 ** This file may be distributed and/or modified under the terms of the
17 ** GNU General Public License version 2 as published by the Free Software
18 ** Foundation and appearing in the file LICENSE.GPL included in the
19 ** packaging of this file.
20 **
21 ** Licensees holding valid Qt Enterprise Edition licenses may use this
22 ** file in accordance with the Qt Commercial License Agreement provided
23 ** with the Software.
24 **
25 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
26 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27 **
28 ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
29 ** information about Qt Commercial License Agreements.
30 ** See http://www.trolltech.com/qpl/ for QPL licensing information.
31 ** See http://www.trolltech.com/gpl/ for GPL licensing information.
32 **
33 ** Contact info@trolltech.com if any conditions of this licensing are
34 ** not clear to you.
35 **
36 **********************************************************************/
37 
38 #ifndef QXML_H
39 #define QXML_H
40 
41 #include <qmodules.h>
42 
43 #if !defined(QT_MODULE_XML)
44 #define QM_EXPORT
45 #else
46 #define QM_EXPORT Q_EXPORT
47 #endif
48 
49 #ifndef QT_H
50 #include <qtextstream.h>
51 #include <qfile.h>
52 #include <qstring.h>
53 #include <qstringlist.h>
54 #include <qvaluestack.h>
55 #include <qmap.h>
56 #endif // QT_H
57 
58 #ifndef QT_NO_XML
59 
61 class QXmlAttributes;
62 class QXmlContentHandler;
63 class QXmlDefaultHandler;
64 class QXmlDTDHandler;
65 class QXmlEntityResolver;
66 class QXmlErrorHandler;
67 class QXmlLexicalHandler;
68 class QXmlDeclHandler;
69 class QXmlInputSource;
70 class QXmlLocator;
72 class QXmlParseException;
73 
74 class QXmlReader;
75 class QXmlSimpleReader;
76 
82 class QXmlLocatorPrivate;
84 
85 
86 //
87 // SAX Namespace Support
88 //
89 
90 #if defined(Q_TEMPLATEDLL)
91 // MOC_SKIP_BEGIN
92 template class QM_EXPORT QMap<QString, QString>;
94 template class QM_EXPORT QValueStack<QString>;
95 // MOC_SKIP_END
96 #endif
97 
99 {
100 public:
103 
104  void setPrefix( const QString&, const QString& );
105 
106  QString prefix( const QString& ) const;
107  QString uri( const QString& ) const;
108  void splitName( const QString&, QString&, QString& ) const;
109  void processName( const QString&, bool, QString&, QString& ) const;
110  QStringList prefixes() const;
111  QStringList prefixes( const QString& ) const;
112 
113  void pushContext();
114  void popContext();
115  void reset();
116 private:
119 
120  //QXmlNamespaceSupportPrivate *d;
121 };
122 
123 
124 //
125 // SAX Attributes
126 //
127 
129 {
130 public:
132  virtual ~QXmlAttributes() {}
133 
134  int index( const QString& qName ) const;
135  int index( const QString& uri, const QString& localPart ) const;
136  int length() const;
137  QString localName( int index ) const;
138  QString qName( int index ) const;
139  QString uri( int index ) const;
140  QString type( int index ) const;
141  QString type( const QString& qName ) const;
142  QString type( const QString& uri, const QString& localName ) const;
143  QString value( int index ) const;
144  QString value( const QString& qName ) const;
145  QString value( const QString& uri, const QString& localName ) const;
146 
147 private:
152 
153  //QXmlAttributesPrivate *d;
154 
155  friend class QXmlSimpleReader;
156 };
157 
158 //
159 // SAX Input Source
160 //
161 
163 {
164 public:
165  QXmlInputSource();
168  virtual ~QXmlInputSource();
169 
170  virtual const QString& data() const;
171  virtual void setData( const QString& d );
172 
173 private:
174  void readInput( QByteArray& rawData );
175 
177 
178  //QXmlInputSourcePrivate *d;
179 };
180 
181 //
182 // SAX Exception Classes
183 //
184 
186 {
187 public:
188  QXmlParseException( const QString& name="", int c=-1, int l=-1, const QString& p="", const QString& s="" )
189  : msg( name ), column( c ), line( l ), pub( p ), sys( s )
190  { }
191 
192  int columnNumber() const;
193  int lineNumber() const;
194  QString publicId() const;
195  QString systemId() const;
196  QString message() const;
197 
198 private:
200  int column;
201  int line;
204 
205  //QXmlParseExceptionPrivate *d;
206 };
207 
208 
209 //
210 // XML Reader
211 //
212 
214 {
215 public:
216  virtual ~QXmlReader() {}
217  virtual bool feature( const QString& name, bool *ok = 0 ) const = 0;
218  virtual void setFeature( const QString& name, bool value ) = 0;
219  virtual bool hasFeature( const QString& name ) const = 0;
220  virtual void* property( const QString& name, bool *ok = 0 ) const = 0;
221  virtual void setProperty( const QString& name, void* value ) = 0;
222  virtual bool hasProperty( const QString& name ) const = 0;
223  virtual void setEntityResolver( QXmlEntityResolver* handler ) = 0;
224  virtual QXmlEntityResolver* entityResolver() const = 0;
225  virtual void setDTDHandler( QXmlDTDHandler* handler ) = 0;
226  virtual QXmlDTDHandler* DTDHandler() const = 0;
227  virtual void setContentHandler( QXmlContentHandler* handler ) = 0;
228  virtual QXmlContentHandler* contentHandler() const = 0;
229  virtual void setErrorHandler( QXmlErrorHandler* handler ) = 0;
230  virtual QXmlErrorHandler* errorHandler() const = 0;
231  virtual void setLexicalHandler( QXmlLexicalHandler* handler ) = 0;
232  virtual QXmlLexicalHandler* lexicalHandler() const = 0;
233  virtual void setDeclHandler( QXmlDeclHandler* handler ) = 0;
234  virtual QXmlDeclHandler* declHandler() const = 0;
235  virtual bool parse( const QXmlInputSource& input ) = 0;
236 };
237 
239 {
240 public:
242  virtual ~QXmlSimpleReader();
243 
244  bool feature( const QString& name, bool *ok = 0 ) const;
245  void setFeature( const QString& name, bool value );
246  bool hasFeature( const QString& name ) const;
247 
248  void* property( const QString& name, bool *ok = 0 ) const;
249  void setProperty( const QString& name, void* value );
250  bool hasProperty( const QString& name ) const;
251 
254  void setDTDHandler( QXmlDTDHandler* handler );
255  QXmlDTDHandler* DTDHandler() const;
256  void setContentHandler( QXmlContentHandler* handler );
258  void setErrorHandler( QXmlErrorHandler* handler );
260  void setLexicalHandler( QXmlLexicalHandler* handler );
262  void setDeclHandler( QXmlDeclHandler* handler );
263  QXmlDeclHandler* declHandler() const;
264 
265  bool parse( const QXmlInputSource& input );
266 
267 private:
268  // variables
275 
276  QChar c; // the character at reading position
277  int lineNr; // number of line
278  int columnNr; // position in line
279  int pos; // position in string
280 
281  int namePos;
282  QChar nameArray[256]; // only used for names
283  QString nameValue; // only used for names
284  int refPos;
285  QChar refArray[256]; // only used for references
286  QString refValue; // only used for references
288  QChar stringArray[256]; // used for any other strings that are parsed
289  QString stringValue; // used for any other strings that are parsed
290 
293  QString xmlRef; // used for parsing of entity references
294 
296 
298 
299  static const QChar QEOF;
300 
301  // inlines
302  virtual bool is_S( const QChar& );
303  virtual bool is_Letter( const QChar& );
304  virtual bool is_NameBeginning( const QChar& );
305  virtual bool is_Digit( const QChar& );
306  virtual bool is_CombiningChar( const QChar& );
307  virtual bool is_Extender( const QChar& );
308  virtual bool is_NameChar( const QChar& );
309 
310  QString& string();
311  void stringClear();
312  void stringAddC();
313  void stringAddC(const QChar&);
314  QString& name();
315  void nameClear();
316  void nameAddC();
317  void nameAddC(const QChar&);
318  QString& ref();
319  void refClear();
320  void refAddC();
321  void refAddC(const QChar&);
322 
323  // used by parseReference() and parsePEReference()
324  enum EntityRecognitionContext { InContent, InAttributeValue, InEntityValue, InDTD };
325 
326  // private functions
327  void eat_ws();
328  void next_eat_ws();
329 
330  void next();
331  bool atEnd();
332 
333  void init( const QXmlInputSource& i );
334 
335  bool entityExist( const QString& ) const;
336 
337  bool parseProlog();
338  bool parseElement();
339  bool parseElementEmptyTag( bool &t, QString &uri, QString &lname );
340  bool parseElementETagBegin2( QString &uri, QString &lname );
341  bool parseElementAttribute( QString &prefix, QString &uri, QString &lname );
342  bool parseMisc();
343  bool parseContent();
344 
345  bool parsePI(bool xmldecl=FALSE);
346  bool parseDoctype();
347  bool parseComment();
348 
349  bool parseName( bool useRef=FALSE );
350  bool parseNmtoken();
351  bool parseAttribute();
352  bool parseReference( bool &charDataRead, EntityRecognitionContext context );
353  bool processReference( bool &charDataRead, EntityRecognitionContext context );
354 
355  bool parseExternalID( bool allowPublicID = FALSE );
356  bool parsePEReference( EntityRecognitionContext context );
357  bool parseMarkupdecl();
358  bool parseAttlistDecl();
359  bool parseAttType();
360  bool parseAttValue();
361  bool parseElementDecl();
362  bool parseNotationDecl();
363  bool parseChoiceSeq();
364  bool parseEntityDecl();
365  bool parseEntityValue();
366 
367  bool parseString( const QString& s );
368 
369  void reportParseError();
370 
372  friend class QXmlLocator;
373 };
374 
375 //
376 // SAX Locator
377 //
378 
380 {
381 public:
383  { reader = parent; }
385  { }
386 
387  int columnNumber();
388  int lineNumber();
389 // QString getPublicId()
390 // QString getSystemId()
391 
392 private:
394 
395  //QXmlLocatorPrivate *d;
396 };
397 
398 //
399 // SAX handler classes
400 //
401 
403 {
404 public:
405  virtual ~QXmlContentHandler() {}
406  virtual void setDocumentLocator( QXmlLocator* locator ) = 0;
407  virtual bool startDocument() = 0;
408  virtual bool endDocument() = 0;
409  virtual bool startPrefixMapping( const QString& prefix, const QString& uri ) = 0;
410  virtual bool endPrefixMapping( const QString& prefix ) = 0;
411  virtual bool startElement( const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts ) = 0;
412  virtual bool endElement( const QString& namespaceURI, const QString& localName, const QString& qName ) = 0;
413  virtual bool characters( const QString& ch ) = 0;
414  virtual bool ignorableWhitespace( const QString& ch ) = 0;
415  virtual bool processingInstruction( const QString& target, const QString& data ) = 0;
416  virtual bool skippedEntity( const QString& name ) = 0;
417  virtual QString errorString() = 0;
418 };
419 
421 {
422 public:
423  virtual ~QXmlErrorHandler() {}
424  virtual bool warning( const QXmlParseException& exception ) = 0;
425  virtual bool error( const QXmlParseException& exception ) = 0;
426  virtual bool fatalError( const QXmlParseException& exception ) = 0;
427  virtual QString errorString() = 0;
428 };
429 
431 {
432 public:
433  virtual ~QXmlDTDHandler() {}
434  virtual bool notationDecl( const QString& name, const QString& publicId, const QString& systemId ) = 0;
435  virtual bool unparsedEntityDecl( const QString& name, const QString& publicId, const QString& systemId, const QString& notationName ) = 0;
436  virtual QString errorString() = 0;
437 };
438 
440 {
441 public:
442  virtual ~QXmlEntityResolver() {}
443  virtual bool resolveEntity( const QString& publicId, const QString& systemId, QXmlInputSource* &ret ) = 0;
444  virtual QString errorString() = 0;
445 };
446 
448 {
449 public:
450  virtual ~QXmlLexicalHandler() {}
451  virtual bool startDTD( const QString& name, const QString& publicId, const QString& systemId ) = 0;
452  virtual bool endDTD() = 0;
453 // virtual bool startEntity( const QString& name ) = 0;
454 // virtual bool endEntity( const QString& name ) = 0;
455  virtual bool startCDATA() = 0;
456  virtual bool endCDATA() = 0;
457  virtual bool comment( const QString& ch ) = 0;
458  virtual QString errorString() = 0;
459 };
460 
462 {
463 public:
464  virtual ~QXmlDeclHandler() {}
465  virtual bool attributeDecl( const QString& eName, const QString& aName, const QString& type, const QString& valueDefault, const QString& value ) = 0;
466  virtual bool internalEntityDecl( const QString& name, const QString& value ) = 0;
467  virtual bool externalEntityDecl( const QString& name, const QString& publicId, const QString& systemId ) = 0;
468  virtual QString errorString() = 0;
469 };
470 
471 
473 {
474 public:
476  virtual ~QXmlDefaultHandler() { }
477 
478  void setDocumentLocator( QXmlLocator* locator );
479  bool startDocument();
480  bool endDocument();
481  bool startPrefixMapping( const QString& prefix, const QString& uri );
482  bool endPrefixMapping( const QString& prefix );
483  bool startElement( const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts );
484  bool endElement( const QString& namespaceURI, const QString& localName, const QString& qName );
485  bool characters( const QString& ch );
486  bool ignorableWhitespace( const QString& ch );
487  bool processingInstruction( const QString& target, const QString& data );
488  bool skippedEntity( const QString& name );
489 
490  bool warning( const QXmlParseException& exception );
491  bool error( const QXmlParseException& exception );
492  bool fatalError( const QXmlParseException& exception );
493 
494  bool notationDecl( const QString& name, const QString& publicId, const QString& systemId );
495  bool unparsedEntityDecl( const QString& name, const QString& publicId, const QString& systemId, const QString& notationName );
496 
497  bool resolveEntity( const QString& publicId, const QString& systemId, QXmlInputSource* &ret );
498 
499  bool startDTD( const QString& name, const QString& publicId, const QString& systemId );
500  bool endDTD();
501 // bool startEntity( const QString& name );
502 // bool endEntity( const QString& name );
503  bool startCDATA();
504  bool endCDATA();
505  bool comment( const QString& ch );
506 
507  bool attributeDecl( const QString& eName, const QString& aName, const QString& type, const QString& valueDefault, const QString& value );
508  bool internalEntityDecl( const QString& name, const QString& value );
509  bool externalEntityDecl( const QString& name, const QString& publicId, const QString& systemId );
510 
512 
513 private:
514  //QXmlDefaultHandlerPrivate *d;
515 };
516 
517 #ifdef _WS_QWS_
518 #ifdef QT_XML_CPP
519 #define inline
520 #else
521 #define QT_NO_XML_INLINE
522 #endif
523 #endif
524 
525 #ifndef QT_NO_XML_INLINE
526 //
527 // inlines
528 //
529 
530 inline bool QXmlSimpleReader::is_S(const QChar& ch)
531 { return ch==' ' || ch=='\t' || ch=='\n' || ch=='\r'; }
532 
533 inline bool QXmlSimpleReader::is_Letter( const QChar& ch )
534 { return ch.isLetter(); }
535 
537 { return ch=='_' || ch==':' || ch.isLetter(); }
538 
539 inline bool QXmlSimpleReader::is_Digit( const QChar& ch )
540 { return ch.isDigit(); }
541 
543 { return FALSE; }
544 
546 { return FALSE; }
547 
548 inline bool QXmlSimpleReader::is_NameChar( const QChar& ch )
549 {
550  return ch=='.' || ch=='-' || ch=='_' || ch==':' ||
551  is_Letter(ch) || is_Digit(ch) ||
552  is_CombiningChar(ch) || is_Extender(ch);
553 }
554 
556 {
557  if ( !xmlRef.isEmpty() ) {
558  c = xmlRef[0];
559  xmlRef.remove( 0, 1 );
560  } else {
561  if ( c=='\n' || c=='\r' ) {
562  lineNr++;
563  columnNr = -1;
564  }
565  if ( pos >= xmlLength ) {
566  c = QEOF;
567  } else {
568  c = xml[pos];
569  columnNr++;
570  pos++;
571  }
572  }
573 }
574 
576 { return c == QEOF; }
577 
579 { while ( !atEnd() && is_S(c) ) next(); }
580 
582 { next(); eat_ws(); }
583 
584 
585 // use buffers instead of QString::operator+= when single characters are read
587 {
588  stringValue += QString( stringArray, stringPos );
589  stringPos = 0;
590  return stringValue;
591 }
593 {
594  nameValue += QString( nameArray, namePos );
595  namePos = 0;
596  return nameValue;
597 }
599 {
600  refValue += QString( refArray, refPos );
601  refPos = 0;
602  return refValue;
603 }
604 
606 { stringValue = ""; stringPos = 0; }
608 { nameValue = ""; namePos = 0; }
610 { refValue = ""; refPos = 0; }
611 
613 {
614  if ( stringPos >= 256 ) {
615  stringValue += QString( stringArray, stringPos );
616  stringPos = 0;
617  }
618  stringArray[stringPos++] = c;
619 }
621 {
622  if ( namePos >= 256 ) {
623  nameValue += QString( nameArray, namePos );
624  namePos = 0;
625  }
626  nameArray[namePos++] = c;
627 }
629 {
630  if ( refPos >= 256 ) {
631  refValue += QString( refArray, refPos );
632  refPos = 0;
633  }
634  refArray[refPos++] = c;
635 }
636 
637 inline void QXmlSimpleReader::stringAddC(const QChar& ch)
638 {
639  if ( stringPos >= 256 ) {
640  stringValue += QString( stringArray, stringPos );
641  stringPos = 0;
642  }
643  stringArray[stringPos++] = ch;
644 }
645 inline void QXmlSimpleReader::nameAddC(const QChar& ch)
646 {
647  if ( namePos >= 256 ) {
648  nameValue += QString( nameArray, namePos );
649  namePos = 0;
650  }
651  nameArray[namePos++] = ch;
652 }
653 inline void QXmlSimpleReader::refAddC(const QChar& ch)
654 {
655  if ( refPos >= 256 ) {
656  refValue += QString( refArray, refPos );
657  refPos = 0;
658  }
659  refArray[refPos++] = ch;
660 }
661 #endif
662 
663 #ifdef _WS_QWS_
664 #ifdef QT_XML_CPP
665 #undef inline
666 #endif
667 #endif
668 
669 #endif //QT_NO_XML
670 
671 #endif
QMap< QString, QString > ns
Definition: qxml.h:118
void nameClear()
Definition: qxml.h:607
static QCString name
Definition: declinfo.cpp:673
static const QChar QEOF
QXmlDefaultHandler()
Definition: qxml.h:475
QString xml
Definition: qxml.h:291
QStringList localnameList
Definition: qxml.h:150
virtual bool is_S(const QChar &)
Definition: qxml.h:530
QXmlEntityResolver * entityRes
Definition: qxml.h:272
virtual void setEntityResolver(QXmlEntityResolver *handler)=0
The QXmlLocator class provides the XML handler classes with information about the actual parsing posi...
Definition: qxml.h:379
virtual ~QXmlDTDHandler()
Definition: qxml.h:433
QXmlLexicalHandler * lexicalHnd
Definition: qxml.h:273
virtual void setContentHandler(QXmlContentHandler *handler)=0
The QXmlLexicalHandler class provides an interface to report lexical content of XML data...
Definition: qxml.h:447
virtual bool skippedEntity(const QString &name)=0
QValueStack< QString > tags
Definition: qxml.h:295
QStringList uriList
Definition: qxml.h:149
void msg(const char *fmt,...)
Definition: message.cpp:107
virtual bool startDocument()=0
std::string string
Definition: nybbler.cc:12
virtual ~QXmlReader()
Definition: qxml.h:216
virtual bool feature(const QString &name, bool *ok=0) const =0
virtual bool is_CombiningChar(const QChar &)
Definition: qxml.h:542
bool isLetter() const
Definition: qstring.cpp:11035
const bool FALSE
Definition: qglobal.h:370
The QXmlNamespaceSupport class is a helper class for XML readers which want to include namespace supp...
Definition: qxml.h:98
error
Definition: include.cc:26
virtual bool startElement(const QString &namespaceURI, const QString &localName, const QString &qName, const QXmlAttributes &atts)=0
void nameAddC()
Definition: qxml.h:620
The QString class provides an abstraction of Unicode text and the classic C null-terminated char arra...
Definition: qstring.h:350
static const QChar QEOF
Definition: qxml.h:299
int columnNr
Definition: qxml.h:278
virtual bool startDTD(const QString &name, const QString &publicId, const QString &systemId)=0
The QXmlErrorHandler class provides an interface to report errors in XML data.
Definition: qxml.h:420
QString & name()
Definition: qxml.h:592
init
Definition: train.py:42
The QXmlDTDHandler class provides an interface to report DTD content of XML data. ...
Definition: qxml.h:430
virtual QXmlDeclHandler * declHandler() const =0
The QChar class provides a light-weight Unicode character.
Definition: qstring.h:56
virtual bool hasFeature(const QString &name) const =0
static QStrList * l
Definition: config.cpp:1044
int comment
virtual QXmlDTDHandler * DTDHandler() const =0
QXmlContentHandler * contentHnd
Definition: qxml.h:269
QXmlSimpleReaderPrivate * d
Definition: qxml.h:297
void refAddC()
Definition: qxml.h:628
QXmlDeclHandler * declHnd
Definition: qxml.h:274
void eat_ws()
Definition: qxml.h:578
int stringPos
Definition: qxml.h:287
void stringClear()
Definition: qxml.h:605
QString & string()
Definition: qxml.h:586
The QXmlSimpleReader class provides an implementation of a simple XML reader (i.e. parser).
Definition: qxml.h:238
virtual ~QXmlContentHandler()
Definition: qxml.h:405
virtual QXmlErrorHandler * errorHandler() const =0
virtual bool attributeDecl(const QString &eName, const QString &aName, const QString &type, const QString &valueDefault, const QString &value)=0
QTextStream & reset(QTextStream &s)
QXmlLocator(QXmlSimpleReader *parent)
Definition: qxml.h:382
virtual bool unparsedEntityDecl(const QString &name, const QString &publicId, const QString &systemId, const QString &notationName)=0
static int input(void)
Definition: code.cpp:15695
virtual QXmlEntityResolver * entityResolver() const =0
void next()
Definition: qxml.h:555
A list of strings.
Definition: qstringlist.h:51
QXmlAttributes()
Definition: qxml.h:131
virtual void setDTDHandler(QXmlDTDHandler *handler)=0
virtual bool is_Extender(const QChar &)
Definition: qxml.h:545
virtual void setDeclHandler(QXmlDeclHandler *handler)=0
The QXmlContentHandler class provides an interface to report logical content of XML data...
Definition: qxml.h:402
The QXmlDefaultHandler class provides a default implementation of all XML handler classes...
Definition: qxml.h:472
p
Definition: test.py:223
QString sys
Definition: qxml.h:203
QStringList qnameList
Definition: qxml.h:148
QXmlSimpleReader * reader
Definition: qxml.h:393
The QXmlReader class provides an interface for XML readers (i.e. parsers).
Definition: qxml.h:213
virtual void setErrorHandler(QXmlErrorHandler *handler)=0
QString xmlRef
Definition: qxml.h:293
virtual bool notationDecl(const QString &name, const QString &publicId, const QString &systemId)=0
virtual bool processingInstruction(const QString &target, const QString &data)=0
virtual bool ignorableWhitespace(const QString &ch)=0
virtual bool is_Letter(const QChar &)
Definition: qxml.h:533
virtual ~QXmlErrorHandler()
Definition: qxml.h:423
virtual QXmlLexicalHandler * lexicalHandler() const =0
virtual QXmlContentHandler * contentHandler() const =0
int xmlLength
Definition: qxml.h:292
void next_eat_ws()
Definition: qxml.h:581
virtual bool endDocument()=0
virtual bool startCDATA()=0
QString msg
Definition: qxml.h:199
virtual bool endPrefixMapping(const QString &prefix)=0
virtual bool hasProperty(const QString &name) const =0
void stringAddC()
Definition: qxml.h:612
virtual void * property(const QString &name, bool *ok=0) const =0
The QFile class is an I/O device that operates on files.
Definition: qfile.h:50
virtual ~QXmlDefaultHandler()
Definition: qxml.h:476
QString & ref()
Definition: qxml.h:598
QXmlDTDHandler * dtdHnd
Definition: qxml.h:271
The QTextStream class provides basic functions for reading and writing text using a QIODevice...
Definition: qtextstream.h:53
virtual void setLexicalHandler(QXmlLexicalHandler *handler)=0
bool isDigit() const
Definition: qstring.cpp:11066
QXmlParseException(const QString &name="", int c=-1, int l=-1, const QString &p="", const QString &s="")
Definition: qxml.h:188
QValueStack< QMap< QString, QString > > nsStack
Definition: qxml.h:117
virtual bool characters(const QString &ch)=0
virtual bool endCDATA()=0
~QXmlLocator()
Definition: qxml.h:384
virtual bool parse(const QXmlInputSource &input)=0
void line(double t, double *p, double &x, double &y, double &z)
std::vector< std::string > column
virtual ~QXmlAttributes()
Definition: qxml.h:132
static QCString type
Definition: declinfo.cpp:672
virtual bool endDTD()=0
virtual bool is_Digit(const QChar &)
Definition: qxml.h:539
The QXmlAttributes class provides XML attributes.
Definition: qxml.h:128
QString nameValue
Definition: qxml.h:283
static msg_handler handler
Definition: qglobal.cpp:234
virtual QString errorString()=0
QString stringValue
Definition: qxml.h:289
The QXmlEntityResolver class provides an interface to resolve extern entities contained in XML data...
Definition: qxml.h:439
The QXmlDeclHandler class provides an interface to report declaration content of XML data...
Definition: qxml.h:461
virtual bool resolveEntity(const QString &publicId, const QString &systemId, QXmlInputSource *&ret)=0
virtual ~QXmlLexicalHandler()
Definition: qxml.h:450
virtual ~QXmlDeclHandler()
Definition: qxml.h:464
EntityRecognitionContext
Definition: qxml.h:324
virtual void setProperty(const QString &name, void *value)=0
The QXmlInputSource class is the source where XML data is read from.
Definition: qxml.h:162
QString refValue
Definition: qxml.h:286
virtual void setFeature(const QString &name, bool value)=0
virtual bool is_NameChar(const QChar &)
Definition: qxml.h:548
bool atEnd()
Definition: qxml.h:575
QString input
Definition: qxml.h:176
#define QM_EXPORT
Definition: qxml.h:46
virtual ~QXmlEntityResolver()
Definition: qxml.h:442
virtual bool internalEntityDecl(const QString &name, const QString &value)=0
virtual bool startPrefixMapping(const QString &prefix, const QString &uri)=0
virtual void setDocumentLocator(QXmlLocator *locator)=0
static QCString * s
Definition: config.cpp:1042
def parent(G, child, parent_type)
Definition: graph.py:67
void refClear()
Definition: qxml.h:609
cet::coded_exception< error, detail::translate > exception
Definition: exception.h:33
The QXmlParseException class is used to report errors with the QXmlErrorHandler interface.
Definition: qxml.h:185
virtual bool externalEntityDecl(const QString &name, const QString &publicId, const QString &systemId)=0
virtual bool is_NameBeginning(const QChar &)
Definition: qxml.h:536
QStringList valueList
Definition: qxml.h:151
QXmlErrorHandler * errorHnd
Definition: qxml.h:270
virtual bool endElement(const QString &namespaceURI, const QString &localName, const QString &qName)=0
virtual bool fatalError(const QXmlParseException &exception)=0
QString pub
Definition: qxml.h:202