Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

ElemElement.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(XALAN_ELEMELEMENT_HEADER_GUARD)
17 #define XALAN_ELEMELEMENT_HEADER_GUARD
18 
28 // Base include file. Must be first.
29 #include "XSLTDefinitions.hpp"
30 
31 
32 
33 // Base class header file.
34 #include "ElemUse.hpp"
35 
36 
37 
38 XALAN_CPP_NAMESPACE_BEGIN
39 
40 
41 
42 class AVT;
43 
44 
45 
46 class ElemElement: public ElemUse
47 {
48 public:
49 
60  StylesheetConstructionContext& constructionContext,
61  Stylesheet& stylesheetTree,
62  const AttributeListType& atts,
63  int lineNumber,
64  int columnNumber);
65 
66  virtual
67  ~ElemElement();
68 
69  // These methods are inherited from ElemUse ...
70 
71  virtual const XalanDOMString&
72  getElementName() const;
73 
74 #if !defined(XALAN_RECURSIVE_STYLESHEET_EXECUTION)
75  virtual const ElemTemplateElement*
76  startElement(StylesheetExecutionContext& executionContext) const;
77 
78  virtual void
79  endElement(StylesheetExecutionContext& executionContext) const;
80 
81  virtual bool
83  StylesheetExecutionContext& executionContext,
84  const ElemTemplateElement* element) const;
85 #else
86  virtual void
87  execute(StylesheetExecutionContext& executionContext) const;
88 #endif
89 
90 protected:
91 
92 #if defined(XALAN_RECURSIVE_STYLESHEET_EXECUTION)
93 
99  virtual void
100  doExecuteChildren(
101  StylesheetExecutionContext& executionContext,
102  bool skipAttributeChildren) const;
103 #endif
104 
105  virtual void
107  StylesheetConstructionContext& constructionContext,
108  const NamespacesHandler& theParentHandler,
109  NamespacesHandler& theHandler);
110 
111 private:
112 
118  void
119  fixupDefaultNamespace(StylesheetExecutionContext& executionContext) const;
120 
127  const XalanDOMString&
128  getParentDefaultNamespace() const;
129 
130 
131  // not implemented
132  ElemElement(const ElemElement &);
133 
134  ElemElement&
135  operator=(const ElemElement &);
136 
137  // Data members...
138  const AVT* m_nameAVT;
139 
140  const AVT* m_namespaceAVT;
141 };
142 
143 
144 
145 XALAN_CPP_NAMESPACE_END
146 
147 
148 
149 #endif // XALAN_ELEMELEMENT_HEADER_GUARD
virtual void endElement(StylesheetExecutionContext &executionContext) const
Completes "post-processing" afer any sub-elements are invoked (i.e.
virtual ~ElemElement()
XERCES_CPP_NAMESPACE_QUALIFIER AttributeList AttributeListType
Definition: AttributeListImpl.hpp:39
virtual const ElemTemplateElement * startElement(StylesheetExecutionContext &executionContext) const
Completes "pre-processing" before any sub-elements are invoked (i.e.
Definition: ElemTemplateElement.hpp:74
Definition: NamespacesHandler.hpp:50
Definition: StylesheetExecutionContext.hpp:104
virtual void namespacesPostConstruction(StylesheetConstructionContext &constructionContext, const NamespacesHandler &theParentHandler, NamespacesHandler &theHandler)
Called after construction is completed.
virtual const XalanDOMString & getElementName() const
Get a string for the name of the element.
Class to hold an Attribute Value Template.
Definition: AVT.hpp:52
Definition: ElemElement.hpp:46
ElemElement(StylesheetConstructionContext &constructionContext, Stylesheet &stylesheetTree, const AttributeListType &atts, int lineNumber, int columnNumber)
Construct an object corresponding to an "xsl:element" element.
virtual bool executeChildElement(StylesheetExecutionContext &executionContext, const ElemTemplateElement *element) const
Filters sub-elements that should be executed.
Definition: XalanDOMString.hpp:42
Definition: ElemUse.hpp:35
Definition: StylesheetConstructionContext.hpp:73
virtual void execute(StylesheetExecutionContext &executionContext) const
Execute the element.
This class represents the base stylesheet or an "import" stylesheet.
Definition: Stylesheet.hpp:84

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