File indexing completed on 2025-01-30 10:27:02
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022 #if !defined(XERCESC_INCLUDE_GUARD_DOMTEXTIMPL_HPP)
0023 #define XERCESC_INCLUDE_GUARD_DOMTEXTIMPL_HPP
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036 #include <xercesc/util/XercesDefs.hpp>
0037 #include <xercesc/dom/DOMText.hpp>
0038 #include "DOMNodeBase.hpp"
0039 #include "DOMChildNode.hpp"
0040 #include "DOMNodeImpl.hpp"
0041 #include "DOMCharacterDataImpl.hpp"
0042
0043 XERCES_CPP_NAMESPACE_BEGIN
0044
0045
0046 class CDOM_EXPORT DOMTextImpl: public DOMText, public HasDOMNodeImpl, public HasDOMChildImpl {
0047 public:
0048 DOMNodeImpl fNode;
0049 DOMChildNode fChild;
0050 DOMCharacterDataImpl fCharacterData;
0051
0052 public:
0053 DOMTextImpl(DOMDocument* ownerDoc, const XMLCh* data);
0054 DOMTextImpl(DOMDocument *ownerDoc, const XMLCh* data, XMLSize_t n);
0055 DOMTextImpl(const DOMTextImpl& other, bool deep=false);
0056
0057 virtual ~DOMTextImpl();
0058 virtual DOMText* splitText(XMLSize_t offset);
0059
0060 virtual bool getIsElementContentWhitespace() const;
0061 virtual const XMLCh* getWholeText() const;
0062 virtual DOMText* replaceWholeText(const XMLCh* content);
0063
0064
0065 virtual bool isIgnorableWhitespace() const;
0066
0067 public:
0068
0069 DOMNODE_FUNCTIONS;
0070
0071
0072 DOMNODEIMPL_DECL;
0073 DOMCHILDIMPL_DECL;
0074
0075 public:
0076
0077 virtual const XMLCh* getData() const;
0078 virtual XMLSize_t getLength() const;
0079 virtual const XMLCh* substringData(XMLSize_t offset,
0080 XMLSize_t count) const;
0081 virtual void appendData(const XMLCh *arg);
0082 virtual void insertData(XMLSize_t offset, const XMLCh *arg);
0083 virtual void deleteData(XMLSize_t offset,
0084 XMLSize_t count);
0085 virtual void replaceData(XMLSize_t offset,
0086 XMLSize_t count,
0087 const XMLCh *arg);
0088 virtual void setData(const XMLCh *data);
0089
0090
0091
0092 virtual void appendData(const XMLCh *arg, XMLSize_t n);
0093 void appendDataFast(const XMLCh *arg, XMLSize_t n);
0094
0095 protected:
0096 virtual void setIgnorableWhitespace(bool ignorable);
0097 friend class AbstractDOMParser;
0098
0099 private:
0100
0101
0102
0103 DOMTextImpl & operator = (const DOMTextImpl &);
0104 };
0105
0106 XERCES_CPP_NAMESPACE_END
0107
0108 #endif