Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.8

Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

XalanSourceTreeText.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright 1999-2004 The Apache Software Foundation.
00003  *
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  *
00008  *     http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 #if !defined(XALANSOURCETREETEXT_HEADER_GUARD_1357924680)
00017 #define XALANSOURCETREETEXT_HEADER_GUARD_1357924680
00018 
00019 
00020 
00021 #include <xalanc/XalanSourceTree/XalanSourceTreeDefinitions.hpp>
00022 
00023 
00024 
00025 #include <xalanc/XalanDOM/XalanText.hpp>
00026 
00027 
00028 
00029 #include <xalanc/XalanDOM/XalanDOMString.hpp>
00030 
00031 
00032 
00033 XALAN_CPP_NAMESPACE_BEGIN
00034 
00035 
00036 
00037 class XalanSourceTreeComment;
00038 class XalanSourceTreeDocumentFragment;
00039 class XalanSourceTreeElement;
00040 class XalanSourceTreeProcessingInstruction;
00041 
00042 
00043 
00044 class XALAN_XALANSOURCETREE_EXPORT XalanSourceTreeText : public XalanText
00045 {
00046 public:
00047 
00051     static void
00052     initialize();
00053 
00057     static void
00058     terminate();
00059 
00070     XalanSourceTreeText(
00071             const XalanDOMString&   theData,
00072             XalanNode*              theParentNode = 0,
00073             XalanNode*              thePreviousSibling = 0,
00074             XalanNode*              theNextSibling = 0,
00075             IndexType               theIndex = 0);
00076 
00077     virtual
00078     ~XalanSourceTreeText();
00079 
00080 
00084     virtual const XalanDOMString&
00085     getNodeName() const;
00086 
00090     virtual const XalanDOMString&
00091     getNodeValue() const;
00092 
00096     virtual NodeType
00097     getNodeType() const;
00098 
00108     virtual XalanNode*
00109     getParentNode() const;
00110 
00124     virtual const XalanNodeList*
00125     getChildNodes() const;
00126 
00132     virtual XalanNode*
00133     getFirstChild() const;
00134 
00140     virtual XalanNode*
00141     getLastChild() const;
00142 
00148     virtual XalanNode*
00149     getPreviousSibling() const;
00150 
00156     virtual XalanNode*
00157     getNextSibling() const;
00158 
00163     virtual const XalanNamedNodeMap*
00164     getAttributes() const;
00165 
00175     virtual XalanDocument*
00176     getOwnerDocument() const;
00177 
00179 
00181 
00200 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
00201     virtual XalanNode*
00202 #else
00203     virtual XalanSourceTreeText*
00204 #endif
00205     cloneNode(bool deep) const;
00206 
00208 
00210 
00227     virtual XalanNode*
00228     insertBefore(
00229             XalanNode*  newChild,
00230             XalanNode*  refChild);
00231 
00245     virtual XalanNode*
00246     replaceChild(
00247             XalanNode*  newChild,
00248             XalanNode*  oldChild);
00249 
00257     virtual XalanNode*
00258     removeChild(XalanNode*  oldChild);
00259 
00271     virtual XalanNode*
00272     appendChild(XalanNode*  newChild);
00273 
00275 
00277 
00285     virtual bool
00286     hasChildNodes() const;
00287 
00288 
00290 
00292 
00293 
00307     virtual void
00308     setNodeValue(const XalanDOMString&      nodeValue);
00309 
00311 
00313 
00330     virtual void
00331     normalize();
00332 
00346     virtual bool
00347     isSupported(
00348             const XalanDOMString&   feature,
00349             const XalanDOMString&   version) const;
00350 
00364     virtual const XalanDOMString&
00365     getNamespaceURI() const;
00366 
00371     virtual const XalanDOMString&
00372     getPrefix() const;
00373 
00381     virtual const XalanDOMString&
00382     getLocalName() const;
00383 
00413     virtual void
00414     setPrefix(const XalanDOMString&     prefix);
00415 
00416     virtual bool
00417     isIndexed() const;
00418 
00419     virtual IndexType
00420     getIndex() const;
00421 
00423 
00424     // These interfaces are inherited from XalanCDATASection...
00425 
00444     virtual const XalanDOMString&
00445     getData() const;
00446 
00454     virtual unsigned int
00455     getLength() const;
00456 
00472     virtual XalanDOMString
00473     substringData(
00474             unsigned int    offset, 
00475             unsigned int    count) const;
00476 
00478 
00489     virtual void
00490     appendData(const XalanDOMString&    arg);
00491 
00502     virtual void
00503     insertData(
00504             unsigned int            offset,
00505             const  XalanDOMString&  arg);
00506 
00523     virtual void
00524     deleteData(
00525             unsigned int    offset, 
00526             unsigned int    count);
00527 
00546     virtual void
00547     replaceData(
00548             unsigned int            offset, 
00549             unsigned int            count, 
00550             const XalanDOMString&   arg);
00551 
00553 
00555 
00557 
00575     virtual XalanText*
00576     splitText(unsigned int  offset);
00577 
00579 
00580     virtual bool
00581     isIgnorableWhitespace() const;
00582 
00583 
00584     // public interfaces not inherited from XalanCDATASection...
00585 
00586     void
00587     setParent(XalanSourceTreeElement*   theParent);
00588 
00589     void
00590     setParent(XalanSourceTreeDocumentFragment*  theParent);
00591 
00592     void
00593     setPreviousSibling(XalanSourceTreeComment*  thePreviousSibling);
00594 
00595     void
00596     setPreviousSibling(XalanSourceTreeElement*  thePreviousSibling);
00597 
00598     void
00599     setPreviousSibling(XalanSourceTreeProcessingInstruction*    thePreviousSibling);
00600 
00601     void
00602     setPreviousSibling(XalanSourceTreeText*     thePreviousSibling);
00603 
00604     void
00605     appendSiblingNode(XalanSourceTreeComment*   theSibling);
00606 
00607     void
00608     appendSiblingNode(XalanSourceTreeElement*   theSibling);
00609 
00610     void
00611     appendSiblingNode(XalanSourceTreeProcessingInstruction*     theSibling);
00612 
00613     void
00614     appendSiblingNode(XalanSourceTreeText*  theSibling);
00615 
00616     void
00617     setIndex(IndexType  theIndex)
00618     {
00619         m_index = theIndex;
00620     }
00621 
00622 protected:
00623 
00624     XalanSourceTreeText(
00625             const XalanSourceTreeText&  theSource,
00626             bool                        /* deep */);
00627 
00628 private:
00629 
00630     // Not implemented...
00631     XalanSourceTreeText&
00632     operator=(const XalanSourceTreeText&    theSource);
00633 
00634     bool
00635     operator==(const XalanSourceTreeText&   theRHS) const;
00636 
00637 
00638     // Data members...
00639     const XalanDOMString&           m_data;
00640 
00641     XalanNode*                      m_parentNode;
00642 
00643     XalanNode*                      m_previousSibling;
00644 
00645     XalanNode*                      m_nextSibling;
00646 
00647     IndexType                       m_index;
00648 
00649     static const XalanDOMString&    s_nameString;
00650 };
00651 
00652 
00653 
00654 XALAN_CPP_NAMESPACE_END
00655 
00656 
00657 
00658 #endif  // !defined(XALANSOURCETREETEXT_HEADER_GUARD_1357924680)

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.8
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.