Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

XalanSourceTreeElement.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 #if !defined(XALANSOURCETREEELEMENT_HEADER_GUARD_1357924680)
17 #define XALANSOURCETREEELEMENT_HEADER_GUARD_1357924680
18 
19 
20 
22 
23 
24 
28 
29 
30 
31 XALAN_CPP_NAMESPACE_BEGIN
32 
33 
34 
41 
42 
43 
45 {
46 public:
47 
61  MemoryManagerType& theManager,
62  const XalanDOMString& theTagName,
63  XalanSourceTreeDocument* theOwnerDocument,
64  XalanNode* theParentNode = 0,
65  XalanNode* thePreviousSibling = 0,
66  XalanNode* theNextSibling = 0,
67  IndexType theIndex = 0);
68 
69  virtual
71 
73  getMemoryManager()
74  {
75  return m_memoryManager;
76  }
80  virtual const XalanDOMString&
81  getNodeName() const;
82 
86  virtual const XalanDOMString&
87  getNodeValue() const;
88 
92  virtual NodeType
93  getNodeType() const;
94 
104  virtual XalanNode*
105  getParentNode() const;
106 
120  virtual const XalanNodeList*
121  getChildNodes() const;
122 
128  virtual XalanNode*
129  getFirstChild() const;
130 
136  virtual XalanNode*
137  getLastChild() const;
138 
144  virtual XalanNode*
145  getPreviousSibling() const;
146 
152  virtual XalanNode*
153  getNextSibling() const;
154 
159  virtual const XalanNamedNodeMap*
160  getAttributes() const = 0;
161 
171  virtual XalanDocument*
172  getOwnerDocument() const;
173 
175 
177 
196 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
197  virtual XalanNode*
198 #else
199  virtual XalanSourceTreeElement*
200 #endif
201  cloneNode(bool deep) const = 0;
202 
204 
206 
223  virtual XalanNode*
224  insertBefore(
225  XalanNode* newChild,
226  XalanNode* refChild);
227 
241  virtual XalanNode*
242  replaceChild(
243  XalanNode* newChild,
244  XalanNode* oldChild);
245 
253  virtual XalanNode*
254  removeChild(XalanNode* oldChild);
255 
267  virtual XalanNode*
268  appendChild(XalanNode* newChild);
269 
271 
273 
281  virtual bool
282  hasChildNodes() const;
283 
284 
286 
288 
289 
303  virtual void
304  setNodeValue(const XalanDOMString& nodeValue);
305 
307 
309 
326  virtual void
327  normalize();
328 
342  virtual bool
343  isSupported(
344  const XalanDOMString& feature,
345  const XalanDOMString& version) const;
346 
360  virtual const XalanDOMString&
361  getNamespaceURI() const = 0;
362 
367  virtual const XalanDOMString&
368  getPrefix() const = 0;
369 
377  virtual const XalanDOMString&
378  getLocalName() const = 0;
379 
409  virtual void
410  setPrefix(const XalanDOMString& prefix);
411 
412  virtual bool
413  isIndexed() const;
414 
415  virtual IndexType
416  getIndex() const;
417 
419 
420  // These interfaces are inherited from XalanElement...
421 
430  virtual const XalanDOMString&
431  getTagName() const;
432 
440  virtual const XalanDOMString&
441  getAttribute(const XalanDOMString& name) const = 0;
442 
450  virtual XalanAttr*
451  getAttributeNode(const XalanDOMString& name) const = 0;
452 
463  virtual XalanNodeList*
464  getElementsByTagName(const XalanDOMString& name) const;
465 
467 
469 
491  virtual void
492  setAttribute(
493  const XalanDOMString& name,
494  const XalanDOMString& value);
495 
515  virtual XalanAttr*
516  setAttributeNode(XalanAttr* newAttr);
517 
519 
521 
537  virtual XalanAttr*
538  removeAttributeNode(XalanAttr* oldAttr);
539 
552  virtual void
553  removeAttribute(const XalanDOMString& name);
554 
556 
558 
569  virtual const XalanDOMString&
571  const XalanDOMString& namespaceURI,
572  const XalanDOMString& localName) const = 0;
573 
614  virtual void
616  const XalanDOMString& namespaceURI,
617  const XalanDOMString& qualifiedName,
618  const XalanDOMString& value);
619 
634  virtual void
636  const XalanDOMString& namespaceURI,
637  const XalanDOMString& localName);
638 
649  virtual XalanAttr*
651  const XalanDOMString& namespaceURI,
652  const XalanDOMString& localName) const = 0;
653 
673  virtual XalanAttr*
674  setAttributeNodeNS(XalanAttr* newAttr);
675 
691  virtual XalanNodeList*
693  const XalanDOMString& namespaceURI,
694  const XalanDOMString& localName) const;
695 
697 
698 
699  // public interfaces not inherited from XalanElement...
700 
702  getDocument() const
703  {
704  return m_ownerDocument;
705  }
706 
707  void
708  setParent(XalanSourceTreeElement* theParent)
709  {
710  m_parentNode = theParent;
711  }
712 
713  void
714  setParent(XalanSourceTreeDocumentFragment* theParent);
715 
716  void
717  setPreviousSibling(XalanSourceTreeComment* thePreviousSibling);
718 
719  void
720  setPreviousSibling(XalanSourceTreeElement* thePreviousSibling);
721 
722  void
723  setPreviousSibling(XalanSourceTreeProcessingInstruction* thePreviousSibling);
724 
725  void
726  setPreviousSibling(XalanSourceTreeText* thePreviousSibling);
727 
728  void
729  appendSiblingNode(XalanSourceTreeComment* theSibling);
730 
731  void
732  appendSiblingNode(XalanSourceTreeElement* theSibling);
733 
734  void
735  appendSiblingNode(XalanSourceTreeProcessingInstruction* theSibling);
736 
737  void
738  appendSiblingNode(XalanSourceTreeText* theSibling);
739 
740  void
741  appendChildNode(XalanSourceTreeComment* theChild);
742 
743  void
744  appendChildNode(XalanSourceTreeElement* theChild);
745 
746  void
747  appendChildNode(XalanSourceTreeProcessingInstruction* theChild);
748 
749  void
750  appendChildNode(XalanSourceTreeText* theChild);
751 
752  void
753  setIndex(IndexType theIndex)
754  {
755  m_index = theIndex;
756  }
757 
763  void
764  clearChildren()
765  {
766  m_firstChild = 0;
767  }
768 
769 protected:
770 
772  MemoryManagerType& theManager,
773  const XalanSourceTreeElement& theSource,
774  bool deep = false);
775 
777 
778  // Data members...
780 
781 private:
782 
783  // Not implemented...
785  operator=(const XalanSourceTreeElement& theSource);
786 
787  bool
788  operator==(const XalanSourceTreeElement& theRHS) const;
789 
790 
791  // Data members...
792  MemoryManagerType& m_memoryManager;
793 
794  XalanSourceTreeDocument* m_ownerDocument;
795 
796  XalanNode* m_parentNode;
797 
798  XalanNode* m_previousSibling;
799 
800  XalanNode* m_nextSibling;
801 
802  XalanNode* m_firstChild;
803 
804  IndexType m_index;
805 };
806 
807 
808 
809 XALAN_CPP_NAMESPACE_END
810 
811 
812 
813 #endif // !defined(XALANSOURCETREEELEMENT_HEADER_GUARD_1357924680)

Interpreting class diagrams

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

dot

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

Apache Logo