dbertoni 00/08/22 13:21:55
Modified: c/src/XSLT ElemAttribute.cpp ElemChoose.cpp ElemElement.cpp
ElemFallback.cpp ElemLiteralResult.cpp
ElemLiteralResult.hpp ElemNumber.cpp ElemNumber.hpp
ElemTemplateElement.cpp ElemTemplateElement.hpp
ElemTextLiteral.cpp ExtensionFunctionHandler.hpp
ExtensionNSHandler.hpp FunctionDocument.cpp
FunctionGenerateID.cpp FunctionKey.cpp
FunctionUnparsedEntityURI.cpp KeyDeclaration.hpp
KeyTable.cpp KeyTable.hpp NodeSortKey.cpp
NodeSortKey.hpp NodeSorter.cpp Stylesheet.cpp
Stylesheet.hpp
StylesheetConstructionContextDefault.hpp
StylesheetExecutionContext.hpp
StylesheetExecutionContextDefault.cpp
StylesheetExecutionContextDefault.hpp
StylesheetHandler.cpp StylesheetHandler.hpp
TopLevelArg.cpp TopLevelArg.hpp
TraceListenerDefault.cpp TracerEvent.cpp
XSLTEngineImpl.cpp XSLTEngineImpl.hpp
Log:
Changes for AIX port.
Revision Changes Path
1.7 +12 -0 xml-xalan/c/src/XSLT/ElemAttribute.cpp
Index: ElemAttribute.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemAttribute.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ElemAttribute.cpp 2000/04/20 16:47:34 1.6
+++ ElemAttribute.cpp 2000/08/22 20:21:16 1.7
@@ -118,6 +118,12 @@
if(0 == m_pNameAVT)
{
+#if defined(XALAN_CANNOT_DELETE_CONST)
+ delete (AVT*)m_pNamespaceAVT;
+#else
+ delete m_pNamespaceAVT;
+#endif
+
constructionContext.error(name + " must have a name
attribute.");
}
@@ -127,9 +133,15 @@
ElemAttribute::~ElemAttribute()
{
+#if defined(XALAN_CANNOT_DELETE_CONST)
+ delete (AVT*)m_pNameAVT;
+
+ delete (AVT*)m_pNamespaceAVT;
+#else
delete m_pNameAVT;
delete m_pNamespaceAVT;
+#endif
}
1.7 +6 -1 xml-xalan/c/src/XSLT/ElemChoose.cpp
Index: ElemChoose.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemChoose.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ElemChoose.cpp 2000/07/06 20:19:24 1.6
+++ ElemChoose.cpp 2000/08/22 20:21:16 1.7
@@ -124,7 +124,12 @@
if(Constants::ELEMNAME_WHEN == type)
{
- const ElemWhen* when = static_cast<const
ElemWhen*>(node);
+ const ElemWhen* when =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const ElemWhen*)node;
+#else
+ static_cast<const ElemWhen*>(node);
+#endif
const XPath* const theXPath =
when->getXPath();
assert(theXPath != 0);
1.7 +6 -0 xml-xalan/c/src/XSLT/ElemElement.cpp
Index: ElemElement.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemElement.cpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ElemElement.cpp 2000/05/24 19:38:48 1.6
+++ ElemElement.cpp 2000/08/22 20:21:17 1.7
@@ -123,9 +123,15 @@
ElemElement::~ElemElement()
{
+#if defined(XALAN_CANNOT_DELETE_CONST)
+ delete (AVT*)m_nameAVT;
+
+ delete (AVT*)m_namespaceAVT;
+#else
delete m_nameAVT;
delete m_namespaceAVT;
+#endif
}
1.2 +4 -0 xml-xalan/c/src/XSLT/ElemFallback.cpp
Index: ElemFallback.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemFallback.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ElemFallback.cpp 2000/05/26 19:25:07 1.1
+++ ElemFallback.cpp 2000/08/22 20:21:17 1.2
@@ -133,7 +133,11 @@
if(parent->getXSLToken() == Constants::ELEMNAME_EXTENSIONCALL)
{
const ElemExtensionCall* const extensionParent =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const ElemExtensionCall*)parent;
+#else
static_cast<const ElemExtensionCall*>(parent);
+#endif
if(extensionParent->elementAvailable(executionContext) == false)
{
1.18 +12 -0 xml-xalan/c/src/XSLT/ElemLiteralResult.cpp
Index: ElemLiteralResult.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemLiteralResult.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- ElemLiteralResult.cpp 2000/08/15 19:39:34 1.17
+++ ElemLiteralResult.cpp 2000/08/22 20:21:18 1.18
@@ -319,6 +319,18 @@
bool
ElemLiteralResult::isAttrOK(
+ int tok,
+ const XalanDOMChar* attrName,
+ const AttributeList& atts,
+ int which)
const
+{
+ return ElemUse::isAttrOK(tok, attrName, atts, which);
+}
+
+
+
+bool
+ElemLiteralResult::isAttrOK(
const XalanDOMChar*
attrName,
const AttributeList& /* atts */,
int
/* which */,
1.10 +7 -0 xml-xalan/c/src/XSLT/ElemLiteralResult.hpp
Index: ElemLiteralResult.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemLiteralResult.hpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ElemLiteralResult.hpp 2000/08/07 19:52:03 1.9
+++ ElemLiteralResult.hpp 2000/08/22 20:21:18 1.10
@@ -103,6 +103,13 @@
virtual bool
isAttrOK(
+ int tok,
+ const XalanDOMChar* attrName,
+ const AttributeList& atts,
+ int which)
const;
+
+ virtual bool
+ isAttrOK(
const XalanDOMChar*
attrName,
const AttributeList& atts,
int
which,
1.21 +12 -19 xml-xalan/c/src/XSLT/ElemNumber.cpp
Index: ElemNumber.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemNumber.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- ElemNumber.cpp 2000/08/10 18:43:04 1.20
+++ ElemNumber.cpp 2000/08/22 20:21:19 1.21
@@ -67,6 +67,7 @@
#include <PlatformSupport/DOMStringHelper.hpp>
+#include <PlatformSupport/XalanAutoPtr.hpp>
#include <PlatformSupport/XalanNumberFormat.hpp>
@@ -76,6 +77,7 @@
+#include "AVT.hpp"
#include "Constants.hpp"
#include "StylesheetConstructionContext.hpp"
#include "StylesheetExecutionContext.hpp"
@@ -209,11 +211,19 @@
ElemNumber::~ElemNumber()
{
+#if defined(XALAN_CANNOT_DELETE_CONST)
+ delete (AVT*)m_format_avt;
+ delete (AVT*)m_lang_avt;
+ delete (AVT*)m_lettervalue_avt;
+ delete (AVT*)m_groupingSeparator_avt;
+ delete (AVT*)m_groupingSize_avt;
+#else
delete m_format_avt;
delete m_lang_avt;
delete m_lettervalue_avt;
delete m_groupingSeparator_avt;
delete m_groupingSize_avt;
+#endif
}
@@ -394,7 +404,7 @@
m_valueExpr->execute(sourceNode, *this,
executionContext));
assert(countObj.get() != 0);
- numberList.push_back(static_cast<int>(countObj->num()));
+ numberList.push_back(int(countObj->num()));
}
else
{
@@ -623,31 +633,14 @@
} // end getMatchingAncestors method
-#if !defined(XALAN_NO_LOCALES)
-std::locale
-ElemNumber::getLocale(
- StylesheetExecutionContext& /*
executionContext */,
- XalanNode*
/* contextNode */) const
-{
- //TODO
- return std::locale();
-}
-
-#endif
-
-
XalanNumberFormat*
ElemNumber::getNumberFormatter(
StylesheetExecutionContext&
executionContext,
XalanNode*
contextNode) const
{
-#if ! defined(__GNUC__)
-// std::locale loc = getLocale(executionContext, contextNode);
-#endif
-
// Helper to format local specific numbers to strings.
- std::auto_ptr<XalanNumberFormat>
formatter(executionContext.createXalanNumberFormat());
+ XalanAutoPtr<XalanNumberFormat>
formatter(executionContext.createXalanNumberFormat());
XalanDOMString digitGroupSepValue;
if (0 != m_groupingSeparator_avt)
1.16 +24 -32 xml-xalan/c/src/XSLT/ElemNumber.hpp
Index: ElemNumber.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemNumber.hpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- ElemNumber.hpp 2000/08/10 18:43:04 1.15
+++ ElemNumber.hpp 2000/08/22 20:21:19 1.16
@@ -58,7 +58,7 @@
#define XALAN_ELEMNUMBER_HEADER_GUARD
/**
- * $Id: ElemNumber.hpp,v 1.15 2000/08/10 18:43:04 dbertoni Exp $
+ * $Id: ElemNumber.hpp,v 1.16 2000/08/22 20:21:19 dbertoni Exp $
*
* $State: Exp $
*
@@ -72,16 +72,10 @@
// Base class header file.
#include "ElemTemplateElement.hpp"
-#include "AVT.hpp"
-#include "XPath/MutableNodeRefList.hpp"
-
-// Just locale.h in G++
-#if ! defined(__GNUC__)
-#include <locale>
-#endif
+#include "XPath/MutableNodeRefList.hpp"
@@ -89,6 +83,7 @@
+class AVT;
class QName;
class XalanNumberFormat;
class XPath;
@@ -105,17 +100,17 @@
public:
#if defined(XALAN_NO_NAMESPACES)
-# define XALAN_STD
+ typedef vector<int>
IntArrayType;
+ typedef vector<Counter>
CounterVectorType;
+ typedef map<const ElemNumber*,
+ CounterVectorType,
+ less<const ElemNumber*> >
ElemToCounterVectorMapType;
#else
-# define XALAN_STD std::
+ typedef std::vector<int> IntArrayType;
+ typedef std::vector<Counter> CounterVectorType;
+ typedef std::map<const ElemNumber*,
+ CounterVectorType>
ElemToCounterVectorMapType;
#endif
- typedef XALAN_STD vector<int> IntArrayType;
- typedef XALAN_STD vector<Counter> CounterVectorType;
- typedef XALAN_STD map<const ElemNumber*, CounterVectorType>
ElemToCounterVectorMapType;
-# if !defined(XALAN_NO_LOCALES)
- typedef XALAN_STD locale LocaleType;
-# endif
-#undef XALAN_STD
/**
* Construct an object corresponding to an "xsl:number" element
@@ -228,16 +223,12 @@
XalanNode*
node,
bool
stopAtFirstFound) const;
-#if !defined(XALAN_NO_LOCALES)
/**
- * Get the locale we should be using.
+ * Get a formatter.
+ * @param executionContext The current execution context.
+ * @param contextNode The current context node.
+ * @return A new XalanNumberFormat instance. The caller owns the
memory.
*/
- LocaleType
- getLocale(
- StylesheetExecutionContext&
executionContext,
- XalanNode*
contextNode) const;
-#endif
-
XalanNumberFormat*
getNumberFormatter(
StylesheetExecutionContext&
executionContext,
@@ -245,6 +236,7 @@
/**
* Format a vector of numbers into a formatted string.
+ * @param executionContext The current execution context.
* @param xslNumberElement Element that takes %conversion-atts;
attributes.
* @param list Array of one or more integer numbers.
* @return String that represents list according to
@@ -335,12 +327,12 @@
const XPath* m_valueExpr;
int m_level; // =
Constants.NUMBERLEVEL_SINGLE;
-
- AVT* m_format_avt;
- AVT* m_lang_avt;
- AVT* m_lettervalue_avt;
- AVT* m_groupingSeparator_avt;
- AVT* m_groupingSize_avt;
+
+ const AVT* m_format_avt;
+ const AVT* m_lang_avt;
+ const AVT* m_lettervalue_avt;
+ const AVT* m_groupingSeparator_avt;
+ const AVT* m_groupingSize_avt;
/**
* Chars for converting integers into alpha counts.
@@ -539,7 +531,7 @@
/**
* Construct a counter object.
*/
- Counter(const ElemNumber* numberElem) :
+ Counter(const ElemNumber* numberElem = 0) :
m_countNodesStartCount(0),
m_countNodes(),
m_fromNode(0),
1.30 +14 -4 xml-xalan/c/src/XSLT/ElemTemplateElement.cpp
Index: ElemTemplateElement.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemTemplateElement.cpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- ElemTemplateElement.cpp 2000/08/15 15:17:09 1.29
+++ ElemTemplateElement.cpp 2000/08/22 20:21:20 1.30
@@ -96,7 +96,6 @@
#include "ElemForEach.hpp"
#include "ElemSort.hpp"
#include "ElemTemplate.hpp"
-//#include "NodeSortKey.hpp"
#include "Stylesheet.hpp"
#include "StylesheetExecutionContext.hpp"
#include "StylesheetRoot.hpp"
@@ -591,7 +590,13 @@
if((Constants::ELEMNAME_APPLY_TEMPLATES == tok) ||
(Constants::ELEMNAME_FOREACH == tok))
{
- const ElemForEach* foreach = static_cast<const ElemForEach
*>(&xslInstruction);
+ const ElemForEach* foreach =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const ElemForEach*)&xslInstruction;
+#else
+ static_cast<const ElemForEach*>(&xslInstruction);
+#endif
+
const unsigned int nChildren = foreach->getSortElems().size();
// Reserve the space now...
@@ -990,7 +995,12 @@
case XalanNode::ATTRIBUTE_NODE:
{
- const XalanAttr* const
attr = static_cast<const XalanAttr*>(child);
+ const XalanAttr* const
attr =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const
XalanAttr*)child;
+#else
+
static_cast<const XalanAttr*>(child);
+#endif
const XalanDOMString
val = attr->getValue();
@@ -1565,7 +1575,7 @@
}
else
{
- ElemTemplateElement* elem =
const_cast<ElemTemplateElement *>(this);
+ const ElemTemplateElement* elem = this;
while(isEmpty(nameSpace) && elem != 0)
{
1.16 +4 -0 xml-xalan/c/src/XSLT/ElemTemplateElement.hpp
Index: ElemTemplateElement.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemTemplateElement.hpp,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- ElemTemplateElement.hpp 2000/08/10 18:43:05 1.15
+++ ElemTemplateElement.hpp 2000/08/22 20:21:20 1.16
@@ -76,6 +76,10 @@
+#include <PlatformSupport/DOMStringHelper.hpp>
+
+
+
#include <XPath/PrefixResolver.hpp>
#include <XPath/NameSpace.hpp>
1.4 +3 -4 xml-xalan/c/src/XSLT/ElemTextLiteral.cpp
Index: ElemTextLiteral.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ElemTextLiteral.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ElemTextLiteral.cpp 2000/04/11 15:09:26 1.3
+++ ElemTextLiteral.cpp 2000/08/22 20:21:21 1.4
@@ -93,8 +93,7 @@
m_ch(ch + start, ch + start + length),
m_disableOutputEscaping(disableOutputEscaping)
{
-
assert(static_cast<XMLChVectorType::size_type>(static_cast<int>(m_ch.size()))
- == m_ch.size());
+ assert(XMLChVectorType::size_type(int(m_ch.size())) == m_ch.size());
}
@@ -116,10 +115,10 @@
if(!m_disableOutputEscaping)
{
- executionContext.characters(m_ch.begin(), 0,
static_cast<unsigned int>(m_ch.size()));
+ executionContext.characters(m_ch.begin(), 0,
unsigned(m_ch.size()));
}
else
{
- executionContext.charactersRaw(m_ch.begin(), 0,
static_cast<unsigned int>(m_ch.size()));
+ executionContext.charactersRaw(m_ch.begin(), 0,
unsigned(m_ch.size()));
}
}
1.6 +1 -1 xml-xalan/c/src/XSLT/ExtensionFunctionHandler.hpp
Index: ExtensionFunctionHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ExtensionFunctionHandler.hpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- ExtensionFunctionHandler.hpp 2000/08/15 19:43:43 1.5
+++ ExtensionFunctionHandler.hpp 2000/08/22 20:21:21 1.6
@@ -73,7 +73,7 @@
-#include <XalanDOM/XalanDOMString.hpp>
+#include <PlatformSupport/DOMStringHelper.hpp>
1.7 +2 -1 xml-xalan/c/src/XSLT/ExtensionNSHandler.hpp
Index: ExtensionNSHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/ExtensionNSHandler.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ExtensionNSHandler.hpp 2000/08/15 19:43:43 1.6
+++ ExtensionNSHandler.hpp 2000/08/22 20:21:21 1.7
@@ -203,7 +203,8 @@
private:
#if defined(XALAN_NO_NAMESPACES)
- typedef set<XalanDOMString> ExtensionSetType;
+ typedef set<XalanDOMString,
+ less<XalanDOMString> > ExtensionSetType;
#else
typedef std::set<XalanDOMString> ExtensionSetType;
#endif
1.13 +37 -15 xml-xalan/c/src/XSLT/FunctionDocument.cpp
Index: FunctionDocument.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/FunctionDocument.cpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- FunctionDocument.cpp 2000/08/14 16:34:43 1.12
+++ FunctionDocument.cpp 2000/08/22 20:21:22 1.13
@@ -161,7 +161,11 @@
else
{
XalanDocument* const docContext = XalanNode::DOCUMENT_NODE
== context->getNodeType() ?
+#if defined(XALAN_OLD_STYLE_CASTS)
+
(XalanDocument*)context :
+#else
static_cast<XalanDocument*>(context) :
+#endif
context->getOwnerDocument();
const XObject* const arg = args[0];
@@ -169,33 +173,51 @@
XalanDOMString base;
- if(args.size() > 1)
+ if(args.size() == 1)
{
+ assert(executionContext.getPrefixResolver() != 0);
+
+ base = executionContext.getPrefixResolver()->getURI();
+ }
+ else
+ {
const XObject* const arg2 = args[1];
assert(arg2 != 0);
if(XObject::eTypeNodeSet == arg2->getType())
{
- XalanNode* const baseNode =
- arg2->nodeset().item(0);
- assert(baseNode != 0);
-
- XalanDocument* const baseDoc =
XalanNode::DOCUMENT_NODE == baseNode->getNodeType() ?
-
static_cast<XalanDocument*>(baseNode) :
-
baseNode->getOwnerDocument();
+ const NodeRefListBase& nodeset =
arg2->nodeset();
+
+ if (nodeset.getLength() == 0)
+ {
+ executionContext.warn("Ignoring the
empty node-set provided as the second argument to the function document().",
+
context);
+
+
assert(executionContext.getPrefixResolver() != 0);
+
+ base =
executionContext.getPrefixResolver()->getURI();
+ }
+ else
+ {
+ XalanNode* const
baseNode =
+ nodeset.item(0);
+ assert(baseNode != 0);
+
+ XalanDocument* const baseDoc =
XalanNode::DOCUMENT_NODE == baseNode->getNodeType() ?
+#if defined(XALAN_OLD_STYLE_CASTS)
+
(XalanDocument*)baseNode :
+#else
+
static_cast<XalanDocument*>(baseNode) :
+#endif
+
baseNode->getOwnerDocument();
- base = executionContext.findURIFromDoc(baseDoc);
+ base =
executionContext.findURIFromDoc(baseDoc);
+ }
}
else
{
base = arg2->str();
}
- }
- else
- {
- assert(executionContext.getPrefixResolver() != 0);
-
- base = executionContext.getPrefixResolver()->getURI();
}
typedef XPathExecutionContext::BorrowReturnMutableNodeRefList
BorrowReturnMutableNodeRefList;
1.4 +5 -1 xml-xalan/c/src/XSLT/FunctionGenerateID.cpp
Index: FunctionGenerateID.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/FunctionGenerateID.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- FunctionGenerateID.cpp 2000/08/10 18:43:06 1.3
+++ FunctionGenerateID.cpp 2000/08/22 20:21:22 1.4
@@ -97,7 +97,11 @@
{
// We're assuming here that each nodes has an implementation
with a
// unique address that we can convert into a string
- return UnsignedLongToDOMString(unsigned long(theNode));
+#if defined(XALAN_OLD_STYLE_CASTS)
+ return UnsignedLongToDOMString((unsigned long)theNode);
+#else
+ return UnsignedLongToDOMString(reinterpret_cast<unsigned
long>(theNode));
+#endif
}
else
{
1.11 +4 -0 xml-xalan/c/src/XSLT/FunctionKey.cpp
Index: FunctionKey.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/FunctionKey.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- FunctionKey.cpp 2000/08/15 19:43:43 1.10
+++ FunctionKey.cpp 2000/08/22 20:21:23 1.11
@@ -123,7 +123,11 @@
{
XalanDocument* const docContext =
XalanNode::DOCUMENT_NODE ==
context->getNodeType() ?
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (XalanDocument*)context :
+#else
static_cast<XalanDocument*>(context) :
+#endif
context->getOwnerDocument();
if(0 == docContext)
1.5 +4 -0 xml-xalan/c/src/XSLT/FunctionUnparsedEntityURI.cpp
Index: FunctionUnparsedEntityURI.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/FunctionUnparsedEntityURI.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- FunctionUnparsedEntityURI.cpp 2000/05/15 15:57:09 1.4
+++ FunctionUnparsedEntityURI.cpp 2000/08/22 20:21:23 1.5
@@ -114,7 +114,11 @@
XalanDocument* const doc =
XalanNode::DOCUMENT_NODE == context->getNodeType() ?
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (XalanDocument*)context :
+#else
static_cast<XalanDocument*>(context) :
+#endif
context->getOwnerDocument();
assert(doc != 0);
1.7 +25 -6 xml-xalan/c/src/XSLT/KeyDeclaration.hpp
Index: KeyDeclaration.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/KeyDeclaration.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- KeyDeclaration.hpp 2000/08/14 22:08:05 1.6
+++ KeyDeclaration.hpp 2000/08/22 20:21:23 1.7
@@ -88,14 +88,33 @@
*/
KeyDeclaration(
const XalanDOMString& name,
- XPath& matchPattern,
- XPath& use) :
+ const XPath& matchPattern,
+ const XPath& use) :
m_name(name),
m_match(&matchPattern),
m_use(&use)
{
}
+ explicit
+ KeyDeclaration() :
+ m_name(),
+ m_match(0),
+ m_use(0)
+ {
+ }
+
+ KeyDeclaration(const KeyDeclaration& theSource) :
+ m_name(theSource.m_name),
+ m_match(theSource.m_match),
+ m_use(theSource.m_use)
+ {
+ }
+
+ ~KeyDeclaration()
+ {
+ }
+
/**
* Retrieves name of element
*
@@ -112,10 +131,10 @@
*
* @return XPath for "use" attribute
*/
- const XPath&
+ const XPath*
getUse() const
{
- return *m_use;
+ return m_use;
}
/**
@@ -123,10 +142,10 @@
*
* @return XPath for "match" attribute
*/
- const XPath&
+ const XPath*
getMatchPattern() const
{
- return *m_match;
+ return m_match;
}
private:
1.10 +13 -5 xml-xalan/c/src/XSLT/KeyTable.cpp
Index: KeyTable.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/KeyTable.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- KeyTable.cpp 2000/08/14 22:08:05 1.9
+++ KeyTable.cpp 2000/08/22 20:21:24 1.10
@@ -110,8 +110,11 @@
if(XalanNode::ELEMENT_NODE == pos->getNodeType())
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ attrs = ((const XalanElement*)pos)->getAttributes();
+#else
attrs = static_cast<const
XalanElement*>(pos)->getAttributes();
-
+#endif
nNodes = attrs->getLength();
if(0 == nNodes)
@@ -144,9 +147,12 @@
// See if our node matches the
given key declaration according to
// the match attribute on
xsl:key.
- const double score =
kd.getMatchPattern().getMatchScore(testNode,
-
resolver,
-
executionContext);
+ assert(kd.getMatchPattern() !=
0);
+
+ const double score =
+
kd.getMatchPattern()->getMatchScore(testNode,
+
resolver,
+
executionContext);
if(score ==
XPath::s_MatchScoreNone)
{
@@ -156,8 +162,10 @@
{
// Query from the node,
according the the select pattern in the
// use attribute in
xsl:key.
+ assert(kd.getUse() !=
0);
+
const XObject* const
xuse =
-
kd.getUse().execute(testNode, resolver, NodeRefList(), executionContext);
+
kd.getUse()->execute(testNode, resolver, NodeRefList(), executionContext);
const NodeRefListBase*
nl = 0;
unsigned int nUseValues;
1.8 +2 -3 xml-xalan/c/src/XSLT/KeyTable.hpp
Index: KeyTable.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/KeyTable.hpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- KeyTable.hpp 2000/08/14 22:08:06 1.7
+++ KeyTable.hpp 2000/08/22 20:21:24 1.8
@@ -58,7 +58,7 @@
#define XALAN_KEYTABLE_HEADER_GUARD
/**
- * $Id: KeyTable.hpp,v 1.7 2000/08/14 22:08:06 dbertoni Exp $
+ * $Id: KeyTable.hpp,v 1.8 2000/08/22 20:21:24 dbertoni Exp $
*
* $State: Exp $
*
@@ -77,7 +77,7 @@
-#include <XalanDOM/XalanDOMString.hpp>
+#include <PlatformSupport/DOMStringHelper.hpp>
@@ -170,7 +170,6 @@
*/
const XalanNode* m_docKey;
- /**
/**
* Table of element keys. The table will be built on demand,
* when a key is requested, or set by the XMLParserLiaison or
1.5 +22 -0 xml-xalan/c/src/XSLT/NodeSortKey.cpp
Index: NodeSortKey.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/NodeSortKey.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- NodeSortKey.cpp 2000/04/11 15:09:28 1.4
+++ NodeSortKey.cpp 2000/08/22 20:21:25 1.5
@@ -111,6 +111,28 @@
+NodeSortKey::NodeSortKey() :
+ m_executionContext(0),
+ m_selectPat(0),
+ m_treatAsNumbers(false),
+ m_descending(false),
+ m_prefixResolver(0)
+{
+}
+
+
+
+NodeSortKey::NodeSortKey(const NodeSortKey& theSource) :
+ m_executionContext(theSource.m_executionContext),
+ m_selectPat(theSource.m_selectPat),
+ m_treatAsNumbers(theSource.m_treatAsNumbers),
+ m_descending(theSource.m_descending),
+ m_prefixResolver(theSource.m_prefixResolver)
+{
+}
+
+
+
NodeSortKey::~NodeSortKey()
{
}
1.7 +8 -4 xml-xalan/c/src/XSLT/NodeSortKey.hpp
Index: NodeSortKey.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/NodeSortKey.hpp,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- NodeSortKey.hpp 2000/04/11 15:09:28 1.6
+++ NodeSortKey.hpp 2000/08/22 20:21:25 1.7
@@ -110,6 +110,10 @@
const XalanDOMString& langValue,
const PrefixResolver& resolver);
+ NodeSortKey();
+
+ NodeSortKey(const NodeSortKey& theSource);
+
~NodeSortKey();
NodeSortKey&
@@ -120,10 +124,10 @@
*
* @return XPath for selection
*/
- const XPath&
+ const XPath*
getSelectPattern() const
{
- return *m_selectPat;
+ return m_selectPat;
}
/**
@@ -153,10 +157,10 @@
*
* @return object for namespace resolution
*/
- const PrefixResolver&
+ const PrefixResolver*
getPrefixResolver() const
{
- return *m_prefixResolver;
+ return m_prefixResolver;
}
private:
1.14 +15 -12 xml-xalan/c/src/XSLT/NodeSorter.cpp
Index: NodeSorter.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/NodeSorter.cpp,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- NodeSorter.cpp 2000/08/07 19:52:04 1.13
+++ NodeSorter.cpp 2000/08/22 20:21:25 1.14
@@ -144,8 +144,7 @@
theList,
theNodes,
keys);
- assert(theNodes.size() ==
-
static_cast<NodeVectorType::size_type>(theLength));
+ assert(theNodes.size() == NodeVectorType::size_type(theLength));
// Copy the nodes back to the list in sorted order.
theList.clear();
@@ -284,10 +283,11 @@
const NodeSortKey& theKey,
XalanNode* node) const
{
- const XPath& xpath = theKey.getSelectPattern();
+ const XPath* const xpath = theKey.getSelectPattern();
+ assert(xpath != 0);
const NumberResultsCacheMapType::const_iterator i =
- m_numberResultsCache.find(&xpath);
+ m_numberResultsCache.find(xpath);
if (i != m_numberResultsCache.end())
{
@@ -303,15 +303,15 @@
const XObjectGuard result(
m_executionContext.getXObjectFactory(),
- xpath.execute(node, theKey.getPrefixResolver(), dummy,
m_executionContext));
+ xpath->execute(node, *theKey.getPrefixResolver(), dummy,
m_executionContext));
assert(result.get() != 0);
const double theResult = result->num();
#if defined(XALAN_NO_MUTABLE)
- ((NodeSortKeyCompare*)this)->m_numberResultsCache[&xpath][node] =
theResult;
+ ((NodeSortKeyCompare*)this)->m_numberResultsCache[xpath][node] =
theResult;
#else
- m_numberResultsCache[&xpath][node] = theResult;
+ m_numberResultsCache[xpath][node] = theResult;
#endif
return theResult;
@@ -324,10 +324,13 @@
const NodeSortKey& theKey,
XalanNode* node) const
{
- const XPath& xpath = theKey.getSelectPattern();
+ assert(theKey.getPrefixResolver() != 0);
+ const XPath* const xpath = theKey.getSelectPattern();
+ assert(xpath != 0);
+
const StringResultsCacheMapType::const_iterator i =
- m_stringResultsCache.find(&xpath);
+ m_stringResultsCache.find(xpath);
if (i != m_stringResultsCache.end())
{
@@ -343,15 +346,15 @@
const XObjectGuard result(
m_executionContext.getXObjectFactory(),
- xpath.execute(node, theKey.getPrefixResolver(), dummy,
m_executionContext));
+ xpath->execute(node, *theKey.getPrefixResolver(), dummy,
m_executionContext));
assert(result.get() != 0);
const XalanDOMString theResult = result->str();
#if defined(XALAN_NO_MUTABLE)
- ((NodeSortKeyCompare*)this)->m_stringResultsCache[&xpath][node] =
theResult;
+ ((NodeSortKeyCompare*)this)->m_stringResultsCache[xpath][node] =
theResult;
#else
- m_stringResultsCache[&xpath][node] = theResult;
+ m_stringResultsCache[xpath][node] = theResult;
#endif
return theResult;
1.33 +7 -3 xml-xalan/c/src/XSLT/Stylesheet.cpp
Index: Stylesheet.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/Stylesheet.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- Stylesheet.cpp 2000/08/14 22:08:06 1.32
+++ Stylesheet.cpp 2000/08/22 20:21:26 1.33
@@ -797,8 +797,12 @@
{
const bool quietConflictWarnings =
executionContext.getQuietConflictWarnings();
- XalanDOMString conflictsString =
(quietConflictWarnings == false)
- ?
XALAN_STATIC_UCODE_STRING("Specificity conflicts found: ") : XalanDOMString();
+ XalanDOMString conflictsString;
+
+ if (quietConflictWarnings == false)
+ {
+ conflictsString =
XALAN_STATIC_UCODE_STRING("Specificity conflicts found: ");
+ }
for(unsigned int i = 0; i < nConflicts; i++)
{
@@ -1107,7 +1111,7 @@
{
isParam = true;
- XObject* const theXObject =
arg.getXObject();
+ const XObject* const
theXObject = arg.getXObject();
if (theXObject != 0)
{
1.24 +38 -19 xml-xalan/c/src/XSLT/Stylesheet.hpp
Index: Stylesheet.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/Stylesheet.hpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- Stylesheet.hpp 2000/08/14 22:08:07 1.23
+++ Stylesheet.hpp 2000/08/22 20:21:26 1.24
@@ -121,28 +121,47 @@
public:
#if defined(XALAN_NO_NAMESPACES)
-# define XALAN_STD
+ typedef map<XalanDOMString,
+ XalanDOMString,
+ less<XalanDOMString> >
PrefixAliasesMapType;
+ typedef map<XalanDOMString,
+ ExtensionNSHandler*,
+ less<XalanDOMString> >
ExtensionNamespacesMapType;
+ typedef map<QName,
+ ElemTemplate*,
+ less<QName> >
ElemTemplateMapType;
+ typedef vector<ElemAttributeSet*>
AttributeSetMapType;
+ typedef vector<ElemVariable*>
ElemVariableVectorType;
+ typedef vector<KeyDeclaration>
KeyDeclarationVectorType;
+ typedef vector<KeyTable*>
KeyTableVectorType;
+ typedef map<const XalanNode*,
+ KeyTable*,
+ less<const XalanNode*> >
KeyTablesTableType;
+ typedef vector<NameSpace>
NamespaceVectorType;
+ typedef vector<NamespaceVectorType>
NamespacesStackType;
+ typedef vector<QName>
QNameVectorType;
+ typedef vector<const Stylesheet*>
StylesheetVectorType;
+ typedef vector<XalanDOMString>
URLStackType;
+ typedef vector<const XPath*>
XPathVectorType;
+ typedef vector<ElemDecimalFormat*>
ElemDecimalFormatVectorType;
#else
-# define XALAN_STD std::
+ typedef std::map<XalanDOMString, XalanDOMString>
PrefixAliasesMapType;
+ typedef std::map<XalanDOMString, ExtensionNSHandler*>
ExtensionNamespacesMapType;
+ typedef std::map<QName, ElemTemplate*>
ElemTemplateMapType;
+ typedef std::vector<ElemAttributeSet*>
AttributeSetMapType;
+ typedef std::vector<ElemVariable*>
ElemVariableVectorType;
+ typedef std::vector<KeyDeclaration>
KeyDeclarationVectorType;
+ typedef std::vector<KeyTable*>
KeyTableVectorType;
+ typedef std::map<const XalanNode*, KeyTable*>
KeyTablesTableType;
+ typedef std::vector<NameSpace>
NamespaceVectorType;
+ typedef std::vector<NamespaceVectorType>
NamespacesStackType;
+ typedef std::vector<QName>
QNameVectorType;
+ typedef std::vector<const Stylesheet*>
StylesheetVectorType;
+ typedef std::vector<XalanDOMString>
URLStackType;
+ typedef std::vector<const XPath*>
XPathVectorType;
+ typedef std::vector<ElemDecimalFormat*>
ElemDecimalFormatVectorType;
#endif
-typedef XALAN_STD map<XalanDOMString, XalanDOMString>
PrefixAliasesMapType;
-typedef XALAN_STD map<XalanDOMString, ExtensionNSHandler*>
ExtensionNamespacesMapType;
-typedef XALAN_STD map<QName, ElemTemplate*>
ElemTemplateMapType;
-typedef XALAN_STD vector<ElemAttributeSet*>
AttributeSetMapType;
-typedef XALAN_STD vector<ElemVariable*>
ElemVariableVectorType;
-typedef XALAN_STD vector<KeyDeclaration>
KeyDeclarationVectorType;
-typedef XALAN_STD vector<KeyTable*>
KeyTableVectorType;
-typedef XALAN_STD map<const XalanNode*, KeyTable*>
KeyTablesTableType;
-typedef XALAN_STD vector<NameSpace>
NamespaceVectorType;
-typedef XALAN_STD vector<NamespaceVectorType>
NamespacesStackType;
-typedef XALAN_STD vector<QName>
QNameVectorType;
-typedef XALAN_STD vector<const Stylesheet*>
StylesheetVectorType;
-typedef XALAN_STD vector<XalanDOMString>
URLStackType;
-typedef XALAN_STD vector<const XPath*>
XPathVectorType;
-typedef XALAN_STD vector<ElemDecimalFormat*>
ElemDecimalFormatVectorType;
-
-#undef XALAN_STD
typedef StylesheetExecutionContext::ParamVectorType ParamVectorType;
1.13 +12 -5
xml-xalan/c/src/XSLT/StylesheetConstructionContextDefault.hpp
Index: StylesheetConstructionContextDefault.hpp
===================================================================
RCS file:
/home/cvs/xml-xalan/c/src/XSLT/StylesheetConstructionContextDefault.hpp,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -r1.12 -r1.13
--- StylesheetConstructionContextDefault.hpp 2000/08/15 19:43:43 1.12
+++ StylesheetConstructionContextDefault.hpp 2000/08/22 20:21:27 1.13
@@ -66,12 +66,21 @@
+#if defined(XALAN_AUTO_PTR_REQUIRES_DEFINITION)
+#include <XPath/XPathProcessor.hpp>
+#endif
+
+
+
+#include <PlatformSupport/XalanAutoPtr.hpp>
+
+
+
// Base class header file...
#include <XSLT/StylesheetConstructionContext.hpp>
-#include <memory>
#include <set>
#include <vector>
@@ -215,14 +224,12 @@
XPathEnvSupport&
m_xpathEnvSupport;
XPathFactory& m_xpathFactory;
-#if defined(XALAN_NO_NAMESPACES)
- typedef auto_ptr<XPathProcessor> XPathProcessAutoPtr;
+ typedef XalanAutoPtr<XPathProcessor> XPathProcessAutoPtr;
+#if defined(XALAN_NO_NAMESPACES)
typedef set<StylesheetRoot*,
less<StylesheetRoot*> >
StylesheetSetType;
#else
- typedef std::auto_ptr<XPathProcessor> XPathProcessAutoPtr;
-
typedef std::set<StylesheetRoot*> StylesheetSetType;
#endif
1.29 +13 -13 xml-xalan/c/src/XSLT/StylesheetExecutionContext.hpp
Index: StylesheetExecutionContext.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/StylesheetExecutionContext.hpp,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- StylesheetExecutionContext.hpp 2000/08/15 15:18:33 1.28
+++ StylesheetExecutionContext.hpp 2000/08/22 20:21:27 1.29
@@ -90,7 +90,14 @@
+#if defined(XALAN_AUTO_PTR_REQUIRES_DEFINITION)
+#include <PlatformSupport/XalanNumberFormat.hpp>
+#endif
+
+
+
#include <PlatformSupport/AttributeListImpl.hpp>
+#include <PlatformSupport/XalanAutoPtr.hpp>
@@ -146,13 +153,6 @@
// These interfaces are new...
/**
- * Reset the instance, and prepare to re-use the
- * context.
- */
- virtual void
- reset() = 0;
-
- /**
* Determine whether conflicts should be reported.
*
* @return true if conflicts should not be warned
@@ -1398,16 +1398,13 @@
createFormatterToText(Writer& writer) = 0;
-#if defined(XALAN_NO_NAMESPACES)
- typedef auto_ptr<XalanNumberFormat>
XalanNumberFormatAutoPtr;
-#else
- typedef std::auto_ptr<XalanNumberFormat>
XalanNumberFormatAutoPtr;
-#endif
+ typedef XalanAutoPtr<XalanNumberFormat>
XalanNumberFormatAutoPtr;
/**
* Create a new XalanNumberFormat instance.
*
- * @return an auto_ptr that owns a new XalanNumberFormat instance.
+ * @return an XalanNumberFormatAutoPtr that owns a new
+ * XalanNumberFormat instance.
*/
virtual XalanNumberFormatAutoPtr
createXalanNumberFormat() = 0;
@@ -1518,6 +1515,9 @@
endConstruction(const KeyDeclaration& keyDeclaration) = 0;
// These interfaces are inherited from XPathExecutionContext...
+
+ virtual void
+ reset() = 0;
virtual XalanNode*
getCurrentNode() const = 0;
1.31 +55 -51
xml-xalan/c/src/XSLT/StylesheetExecutionContextDefault.cpp
Index: StylesheetExecutionContextDefault.cpp
===================================================================
RCS file:
/home/cvs/xml-xalan/c/src/XSLT/StylesheetExecutionContextDefault.cpp,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -r1.30 -r1.31
--- StylesheetExecutionContextDefault.cpp 2000/08/15 15:18:33 1.30
+++ StylesheetExecutionContextDefault.cpp 2000/08/22 20:21:27 1.31
@@ -157,46 +157,6 @@
-void
-StylesheetExecutionContextDefault::reset()
-{
-#if !defined(XALAN_NO_NAMESPACES)
- using std::for_each;
-#endif
-
- for_each(m_formatterListeners.begin(),
- m_formatterListeners.end(),
- DeleteFunctor<FormatterListener>());
-
- m_formatterListeners.clear();
-
- for_each(m_printWriters.begin(),
- m_printWriters.end(),
- DeleteFunctor<PrintWriter>());
-
- m_printWriters.clear();
-
- for_each(m_textOutputStreams.begin(),
- m_textOutputStreams.end(),
- DeleteFunctor<TextOutputStream>());
-
- m_textOutputStreams.clear();
-
- clearLiveVariablesStack();
-
- m_variablesStack.reset();
-
- // Clean up the key table vector
- for_each(m_keyTables.begin(),
- m_keyTables.end(),
- makeMapValueDeleteFunctor(m_keyTables));
-
- m_keyTables.clear();
- assert(m_matchPatternCache.size() == 0);
-}
-
-
-
bool
StylesheetExecutionContextDefault::getQuietConflictWarnings() const
{
@@ -756,9 +716,9 @@
{
const ElemWithParam* const xslParamElement
=
#if defined(XALAN_OLD_STYLE_CASTS)
- (ElemWithParam*)child;
+ (ElemWithParam*)child;
#else
- static_cast<const ElemWithParam*>(child);
+ static_cast<const
ElemWithParam*>(child);
#endif
const XPath* const pxpath =
xslParamElement->getSelectPattern();
@@ -965,11 +925,7 @@
XalanNode*
sourceNode,
const QName& mode)
{
-#if !defined(XALAN_NO_NAMESPACES)
- using std::auto_ptr;
-#endif
-
- auto_ptr<ResultTreeFragBase>
+ XalanAutoPtr<ResultTreeFragBase>
theFragment(m_xsltProcessor.createResultTreeFrag(*this,
templateChild,
sourceTree,
@@ -1324,15 +1280,15 @@
bool
-StylesheetExecutionContextDefault::getInConstruction(const KeyDeclaration&
keyDeclaration) const
+StylesheetExecutionContextDefault::getInConstruction(const KeyDeclaration&
keyDeclaration) const
{
- return m_keyDeclarationSet.count(&keyDeclaration)?true:false;
+ return m_keyDeclarationSet.count(&keyDeclaration) != 0 ? true : false;
}
void
-StylesheetExecutionContextDefault::beginConstruction(const KeyDeclaration&
keyDeclaration)
+StylesheetExecutionContextDefault::beginConstruction(const KeyDeclaration&
keyDeclaration)
{
m_keyDeclarationSet.insert(&keyDeclaration);
}
@@ -1340,9 +1296,57 @@
void
-StylesheetExecutionContextDefault::endConstruction(const KeyDeclaration&
keyDeclaration)
+StylesheetExecutionContextDefault::endConstruction(const KeyDeclaration&
keyDeclaration)
{
m_keyDeclarationSet.erase(&keyDeclaration);
+}
+
+
+
+void
+StylesheetExecutionContextDefault::reset()
+{
+ assert(m_elementRecursionStack.size() == 0);
+
+ // Reset the support objects...
+ m_xpathExecutionContextDefault.reset();
+
+ m_xsltProcessor.reset();
+
+#if !defined(XALAN_NO_NAMESPACES)
+ using std::for_each;
+#endif
+
+ for_each(m_formatterListeners.begin(),
+ m_formatterListeners.end(),
+ DeleteFunctor<FormatterListener>());
+
+ m_formatterListeners.clear();
+
+ for_each(m_printWriters.begin(),
+ m_printWriters.end(),
+ DeleteFunctor<PrintWriter>());
+
+ m_printWriters.clear();
+
+ for_each(m_textOutputStreams.begin(),
+ m_textOutputStreams.end(),
+ DeleteFunctor<TextOutputStream>());
+
+ m_textOutputStreams.clear();
+
+ clearLiveVariablesStack();
+
+ m_variablesStack.reset();
+
+ // Clean up the key table vector
+ for_each(m_keyTables.begin(),
+ m_keyTables.end(),
+ makeMapValueDeleteFunctor(m_keyTables));
+
+ m_keyTables.clear();
+
+ assert(m_matchPatternCache.size() == 0);
}
1.30 +3 -3
xml-xalan/c/src/XSLT/StylesheetExecutionContextDefault.hpp
Index: StylesheetExecutionContextDefault.hpp
===================================================================
RCS file:
/home/cvs/xml-xalan/c/src/XSLT/StylesheetExecutionContextDefault.hpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- StylesheetExecutionContextDefault.hpp 2000/08/15 19:43:43 1.29
+++ StylesheetExecutionContextDefault.hpp 2000/08/22 20:21:28 1.30
@@ -112,9 +112,6 @@
// These interfaces are inherited from StylesheetExecutionContext...
- virtual void
- reset();
-
virtual bool
getQuietConflictWarnings() const;
@@ -539,6 +536,9 @@
endConstruction(const KeyDeclaration& keyDeclaration);
// These interfaces are inherited from XPathExecutionContext...
+
+ virtual void
+ reset();
virtual XalanNode*
getCurrentNode() const;
1.38 +21 -7 xml-xalan/c/src/XSLT/StylesheetHandler.cpp
Index: StylesheetHandler.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/StylesheetHandler.cpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- StylesheetHandler.cpp 2000/08/11 21:15:46 1.37
+++ StylesheetHandler.cpp 2000/08/22 20:21:28 1.38
@@ -59,7 +59,6 @@
#include <algorithm>
-#include <memory>
@@ -78,6 +77,7 @@
#include <PlatformSupport/DoubleSupport.hpp>
#include <PlatformSupport/StringTokenizer.hpp>
#include <PlatformSupport/STLHelper.hpp>
+#include <PlatformSupport/XalanAutoPtr.hpp>
@@ -636,7 +636,12 @@
case Constants::ELEMNAME_SORT:
{
- ElemForEach* foreach =
static_cast<ElemForEach*>(m_elemStack.back());
+ ElemForEach* foreach =
+#if defined(XALAN_OLD_STYLE_CASTS)
+
(ElemForEach*)m_elemStack.back();
+#else
+
static_cast<ElemForEach*>(m_elemStack.back());
+#endif
ElemSort* sortElem = new
ElemSort(m_constructionContext,
m_stylesheet,
@@ -1127,9 +1132,6 @@
if(equals(aname, Constants::ATTRNAME_HREF))
{
-#if !defined(XALAN_NO_NAMESPACES)
- using std::auto_ptr;
-#endif
foundIt = true;
if(m_foundNotImport)
@@ -1160,7 +1162,7 @@
// This will take care of cleaning up the stylesheet if
an exception
// is thrown.
- auto_ptr<Stylesheet> importedStylesheet(
+ XalanAutoPtr<Stylesheet> importedStylesheet(
m_constructionContext.create(
m_stylesheet.getStylesheetRoot(),
hrefUrl));
@@ -1173,7 +1175,7 @@
m_stylesheet.addImport(importedStylesheet.get(), true);
// The imported stylesheet is now owned by the
stylesheet, so
- // release the auto_ptr.
+ // release the XalanAutoPtr.
importedStylesheet.release();
assert(equals(importStack.back(), hrefUrl));
@@ -1271,7 +1273,11 @@
else if((Constants::ELEMNAME_PARAMVARIABLE == tok) ||
Constants::ELEMNAME_VARIABLE == tok)
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ ElemVariable* const var =
(ElemVariable*)m_lastPopped;
+#else
ElemVariable* const var =
static_cast<ElemVariable*>(m_lastPopped);
+#endif
if(var->isTopLevel())
{
@@ -1339,7 +1345,11 @@
if(Constants::ELEMNAME_TEXT == parent->getXSLToken())
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ disableOutputEscaping =
((ElemText*)parent)->getDisableOutputEscaping();
+#else
disableOutputEscaping =
static_cast<ElemText*>(parent)->getDisableOutputEscaping();
+#endif
parent = m_elemStack[m_elemStack.size()-2];
preserveSpace = true;
}
@@ -1427,7 +1437,11 @@
if(Constants::ELEMNAME_TEXT == parent->getXSLToken())
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ disableOutputEscaping =
((ElemText*)parent)->getDisableOutputEscaping();
+#else
disableOutputEscaping =
static_cast<ElemText*>(parent)->getDisableOutputEscaping();
+#endif
parent = m_elemStack[m_elemStack.size()-2];
preserveSpace = true;
}
1.15 +15 -12 xml-xalan/c/src/XSLT/StylesheetHandler.hpp
Index: StylesheetHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/StylesheetHandler.hpp,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- StylesheetHandler.hpp 2000/07/11 19:54:53 1.14
+++ StylesheetHandler.hpp 2000/08/22 20:21:29 1.15
@@ -101,6 +101,14 @@
public:
+#if defined(XALAN_NO_NAMESPACES)
+ typedef vector<ElemTemplateElement*> ElemTemplateStackType;
+ typedef vector<ElemTextLiteral*>
ElemTextLiteralStackType;
+#else
+ typedef std::vector<ElemTemplateElement*> ElemTemplateStackType;
+ typedef std::vector<ElemTextLiteral*>
ElemTextLiteralStackType;
+#endif
+
/**
* Stack to keep track of the current include base.
*/
@@ -395,14 +403,6 @@
XalanDOMString m_pendingException;
bool m_exceptionPending;
-#if defined(XALAN_NO_NAMESPACES)
- typedef vector<ElemTemplateElement*> ElemTemplateStackType;
- typedef vector<ElemTextLiteral*>
ElemTextLiteralStackType;
-#else
- typedef std::vector<ElemTemplateElement*> ElemTemplateStackType;
- typedef std::vector<ElemTextLiteral*>
ElemTextLiteralStackType;
-#endif
-
/**
* The owning stylesheet.
*/
@@ -470,10 +470,13 @@
/**
* Init the wrapperless template
*/
- ElemTemplateElement* initWrapperless (const XalanDOMString& name,
- const AttributeList&
atts,
- int lineNumber,
- int columnNumber);
+ ElemTemplateElement*
+ initWrapperless(
+ const XalanDOMString& name,
+ const AttributeList& atts,
+ int lineNumber,
+ int columnNumber);
+
class PushPopIncludeState
{
1.2 +1 -1 xml-xalan/c/src/XSLT/TopLevelArg.cpp
Index: TopLevelArg.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/TopLevelArg.cpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TopLevelArg.cpp 2000/07/21 19:46:11 1.1
+++ TopLevelArg.cpp 2000/08/22 20:21:29 1.2
@@ -75,7 +75,7 @@
TopLevelArg::TopLevelArg(
const QName& name,
- XObject* variable) :
+ const XObject* variable) :
m_qname(name),
m_expression(),
m_xobject(variable)
1.2 +6 -6 xml-xalan/c/src/XSLT/TopLevelArg.hpp
Index: TopLevelArg.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/TopLevelArg.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TopLevelArg.hpp 2000/07/21 19:46:11 1.1
+++ TopLevelArg.hpp 2000/08/22 20:21:29 1.2
@@ -105,8 +105,8 @@
* @param variable the XObject instance.
*/
TopLevelArg(
- const QName& name,
- XObject* variable);
+ const QName& name = QName(),
+ const XObject* variable = 0);
/**
* Copy constructor
@@ -147,7 +147,7 @@
*
* @return pointer to the XObject instance
*/
- XObject*
+ const XObject*
getXObject() const
{
return m_xobject;
@@ -171,11 +171,11 @@
private:
- QName m_qname;
+ QName m_qname;
- XalanDOMString m_expression;
+ XalanDOMString m_expression;
- XObject* m_xobject;
+ const XObject* m_xobject;
};
1.4 +12 -2 xml-xalan/c/src/XSLT/TraceListenerDefault.cpp
Index: TraceListenerDefault.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/TraceListenerDefault.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TraceListenerDefault.cpp 2000/08/10 18:43:11 1.3
+++ TraceListenerDefault.cpp 2000/08/22 20:21:30 1.4
@@ -121,7 +121,12 @@
m_printWriter.print(ev.m_styleNode.getElementName());
m_printWriter.print(XALAN_STATIC_UCODE_STRING(" "));
- const ElemTextLiteral& etl = static_cast<const
ElemTextLiteral&>(ev.m_styleNode);
+ const ElemTextLiteral& etl =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const ElemTextLiteral&)ev.m_styleNode;
+#else
+ static_cast<const
ElemTextLiteral&>(ev.m_styleNode);
+#endif
m_printWriter.println(c_wstr(etl.getText()),
etl.getText().size());
}
@@ -130,7 +135,12 @@
case Constants::ELEMNAME_TEMPLATE:
if(m_traceTemplates == true || m_traceElements == true)
{
- const ElemTemplate& et = static_cast<const
ElemTemplate&>(ev.m_styleNode);
+ const ElemTemplate& et =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const ElemTemplate&)ev.m_styleNode;
+#else
+ static_cast<const
ElemTemplate&>(ev.m_styleNode);
+#endif
m_printWriter.print(XALAN_STATIC_UCODE_STRING("Line
#"));
m_printWriter.print(ev.m_styleNode.getLineNumber());
1.4 +11 -2 xml-xalan/c/src/XSLT/TracerEvent.cpp
Index: TracerEvent.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/TracerEvent.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- TracerEvent.cpp 2000/04/11 15:09:30 1.3
+++ TracerEvent.cpp 2000/08/22 20:21:30 1.4
@@ -93,7 +93,11 @@
XalanDOMString
TracerEvent::printNode(const XalanNode& n)
{
- XalanDOMString r = LongToDOMString(reinterpret_cast<long>(&n)) +
XALAN_STATIC_UCODE_STRING(" ");
+#if defined(XALAN_OLD_STYLE_CASTS)
+ XalanDOMString r = UnsignedLongToDOMString((unsigned long)&n) +
XALAN_STATIC_UCODE_STRING(" ");
+#else
+ XalanDOMString r = UnsignedLongToDOMString(reinterpret_cast<unsigned
long>(&n)) + XALAN_STATIC_UCODE_STRING(" ");
+#endif
if (n.getNodeType() == XalanNode::ELEMENT_NODE)
{
@@ -142,8 +146,13 @@
XalanDOMString
TracerEvent::printNodeList(const XalanNodeList& l)
{
- XalanDOMString r = LongToDOMString(reinterpret_cast<long>(&l)) +
+#if defined(XALAN_OLD_STYLE_CASTS)
+ XalanDOMString r = UnsignedLongToDOMString((unsigned long)&l) +
XALAN_STATIC_UCODE_STRING("[");
+#else
+ XalanDOMString r = UnsignedLongToDOMString(reinterpret_cast<long>(&l))
+
+
XALAN_STATIC_UCODE_STRING("[");
+#endif
unsigned int len = l.getLength();
unsigned int i = 0;
1.58 +106 -16 xml-xalan/c/src/XSLT/XSLTEngineImpl.cpp
Index: XSLTEngineImpl.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/XSLTEngineImpl.cpp,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -r1.57 -r1.58
--- XSLTEngineImpl.cpp 2000/08/11 21:15:47 1.57
+++ XSLTEngineImpl.cpp 2000/08/22 20:21:31 1.58
@@ -327,9 +327,19 @@
{
try
{
- XalanDOMString xslIdentifier(0 ==
stylesheetSource.getSystemId()
-
? XalanDOMString(XALAN_STATIC_UCODE_STRING("Input XSL")) :
stylesheetSource.getSystemId());
+ XalanDOMString xslIdentifier;
+
+ if (0 == stylesheetSource.getSystemId())
+ {
+ xslIdentifier =
XalanDOMString(XALAN_STATIC_UCODE_STRING("Input XSL"));
+ }
+ else
+ {
+ xslIdentifier = stylesheetSource.getSystemId();
+ }
+
bool totalTimeID = true;
+
pushTime(&totalTimeID);
XalanNode* sourceTree =
getSourceTreeFromInput(inputSource);
@@ -706,14 +716,15 @@
bool
isRoot,
StylesheetConstructionContext& constructionContext)
{
- Stylesheet* stylesheet = 0;
+ Stylesheet* stylesheet = 0;
XalanDOMString stringHolder;
+
const XalanDOMString localXSLURLString = clone(trim(xslURLString));
- const unsigned int fragIndex = indexOf(localXSLURLString, '#');
+ const unsigned int fragIndex = indexOf(localXSLURLString,
'#');
- XalanDocument* stylesheetDoc = 0;
+ const XalanDocument* stylesheetDoc = 0;
if(fragIndex == 0)
{
@@ -721,18 +732,26 @@
const XalanDOMString fragID = substring(localXSLURLString,
1);
- XalanElement* nsNode = 0;
+ const XalanElement* nsNode = 0;
if (fragBase.getNodeType() == XalanNode::DOCUMENT_NODE)
{
const XalanDocument& doc =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanDocument&)fragBase;
+#else
static_cast<const XalanDocument&>(fragBase);
+#endif
nsNode = doc.getDocumentElement();
}
else if (fragBase.getNodeType() == XalanNode::ELEMENT_NODE)
{
- nsNode = static_cast<XalanElement*>(&fragBase);
+#if defined(XALAN_OLD_STYLE_CASTS)
+ nsNode = (const XalanElement*)&fragBase;
+#else
+ nsNode = static_cast<const XalanElement*>(&fragBase);
+#endif
}
else
{
@@ -740,7 +759,11 @@
if (node->getNodeType() ==
XalanNode::ELEMENT_NODE)
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ nsNode = (const XalanElement*)&fragBase;
+#else
nsNode = static_cast<XalanElement*>(node);
+#endif
}
else
{
@@ -842,7 +865,11 @@
}
else
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ stylesheet =
constructionContext.create(*((StylesheetRoot*)m_stylesheetRoot), stringHolder);
+#else
stylesheet =
constructionContext.create(*const_cast<StylesheetRoot*>(m_stylesheetRoot),
stringHolder);
+#endif
}
StylesheetHandler stylesheetProcessor(*stylesheet,
constructionContext);
@@ -881,7 +908,11 @@
}
else
{
+#if defined(XALAN_OLD_STYLE_CASTS)
+ stylesheet = new
Stylesheet(*(StylesheetRoot*)m_stylesheetRoot, localXSLURLString,
constructionContext);
+#else
stylesheet = new
Stylesheet(*const_cast<StylesheetRoot*>(m_stylesheetRoot), localXSLURLString,
constructionContext);
+#endif
}
StylesheetHandler stylesheetProcessor(*stylesheet,
constructionContext);
@@ -1258,7 +1289,11 @@
{
if(0 != key)
{
+#if defined(XALAN_NO_MUTABLE)
+
((XSLTEngineImpl*)this)->m_durationsTable.insert(DurationsTableMapType::value_type(key,
clock()));
+#else
m_durationsTable.insert(DurationsTableMapType::value_type(key,
clock()));
+#endif
}
}
@@ -1272,7 +1307,11 @@
if(0 != key)
{
const DurationsTableMapType::iterator i =
+#if defined(XALAN_NO_MUTABLE)
+
((XSLTEngineImpl*)this)->m_durationsTable.find(key);
+#else
m_durationsTable.find(key);
+#endif
assert(i != m_durationsTable.end());
@@ -1280,7 +1319,11 @@
{
clockTicksDuration = clock() - (*i).second;
+#if defined(XALAN_NO_MUTABLE)
+ ((XSLTEngineImpl*)this)->m_durationsTable.erase(i);
+#else
m_durationsTable.erase(i);
+#endif
}
}
@@ -1553,7 +1596,11 @@
// Yuck!!! Ugly hack to switch to HTML
on-the-fly. You can
// blame this ridiculous crap on the
XSLT Working Group...
FormatterToXML* const theFormatter =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (FormatterToXML*)m_flistener;
+#else
static_cast<FormatterToXML*>(m_flistener);
+#endif
m_flistener =
m_executionContext->createFormatterToHTML(
@@ -1929,7 +1976,12 @@
// was: stripWhiteSpace = isLiteral ? true :
shouldStripSourceNode(node);
}
- const XalanText& tx = static_cast<const
XalanText&>(node);
+ const XalanText& tx =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanText&)node;
+#else
+ static_cast<const XalanText&>(node);
+#endif
XalanDOMString data;
@@ -1987,7 +2039,11 @@
{
copyAttributesToAttList(&node,
m_stylesheetRoot,
+#if defined(XALAN_OLD_STYLE_CASTS)
+
(const XalanElement&)node,
+#else
static_cast<const XalanElement&>(node),
+#endif
m_pendingAttributes);
copyNamespaceAttributes(node,
@@ -2001,7 +2057,11 @@
case XalanNode::CDATA_SECTION_NODE:
{
const XalanCDATASection& theCDATA =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanCDATASection&)node;
+#else
static_cast<const XalanCDATASection&>(node);
+#endif
const XalanDOMString data = theCDATA.getData();
@@ -2012,8 +2072,11 @@
case XalanNode::ATTRIBUTE_NODE:
{
const XalanAttr& attr =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanAttr&)node;
+#else
static_cast<const XalanAttr&>(node);
-
+#endif
addResultAttribute(m_pendingAttributes,
m_executionContext->getNameOfNode(attr),
attr.getValue());
@@ -2023,7 +2086,11 @@
case XalanNode::COMMENT_NODE:
{
const XalanComment& theComment =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanComment&)node;
+#else
static_cast<const XalanComment&>(node);
+#endif
const XalanDOMString theData = theComment.getData();
@@ -2047,7 +2114,11 @@
case XalanNode::PROCESSING_INSTRUCTION_NODE:
{
const XalanProcessingInstruction& pi =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanProcessingInstruction&)node;
+#else
static_cast<const
XalanProcessingInstruction&>(node);
+#endif
const XalanDOMString theTarget = pi.getTarget();
const XalanDOMString theData = pi.getData();
@@ -2079,12 +2150,8 @@
XalanNode*
sourceNode,
const QName& mode)
{
-#if !defined(XALAN_NO_NAMESPACES)
- using std::auto_ptr;
-#endif
+ XalanAutoPtr<ResultTreeFragBase> pfrag(createDocFrag());
- auto_ptr<ResultTreeFragBase> pfrag(createDocFrag());
-
FormatterToDOM tempFormatter(m_resultTreeFactory,
pfrag.get(),
0);
@@ -2738,7 +2805,11 @@
for(unsigned int i = 0; i < nAttributes; i++)
{
const XalanAttr* const attr =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanAttr*)attributes->item(i);
+#else
static_cast<const XalanAttr*>(attributes->item(i));
+#endif
assert(attr != 0);
const XalanDOMString theTemp(s_XSLNameSpaceURL + ":use");
@@ -2786,7 +2857,11 @@
if((XalanNode::TEXT_NODE == type) ||
(XalanNode::CDATA_SECTION_NODE == type))
{
const XalanText& theTextNode =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanText&)textNode;
+#else
static_cast<const XalanText&>(textNode);
+#endif
if(!theTextNode.isIgnorableWhitespace())
{
@@ -2809,8 +2884,11 @@
if(parent->getNodeType() ==
XalanNode::ELEMENT_NODE)
{
const XalanElement* const
parentElem =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const XalanElement*)parent;
+#else
static_cast<const
XalanElement*>(parent);
-
+#endif
/*
const XalanAttr* const attr =
parentElem->getAttributeNode(XALAN_STATIC_UCODE_STRING("xml:space"));
@@ -3100,7 +3178,11 @@
{
if(m_resultTreeFactory == 0)
{
+#if defined(XALAN_NO_MUTABLE)
+ ((XSLTEngineImpl*)this)->m_resultTreeFactory =
m_parserLiaison.createDocument();
+#else
m_resultTreeFactory = m_parserLiaison.createDocument();
+#endif
}
return m_resultTreeFactory;
@@ -3214,8 +3296,12 @@
for(unsigned int i = 0; i < nAttributes; i++)
{
- const XalanAttr* attr =
+ const XalanAttr* attr =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (const
XalanAttr*)attributes->item(i);
+#else
static_cast<const
XalanAttr*>(attributes->item(i));
+#endif
const XalanDOMString attrName =
attr->getName();
@@ -3245,7 +3331,11 @@
if (childNode->getNodeType() ==
XalanNode::ELEMENT_NODE)
{
XalanElement* child =
+#if defined(XALAN_OLD_STYLE_CASTS)
+ (XalanElement*)childNode;
+#else
static_cast<XalanElement*>(childNode);
+#endif
const XalanDOMString childName =
child->getTagName();
1.44 +30 -13 xml-xalan/c/src/XSLT/XSLTEngineImpl.hpp
Index: XSLTEngineImpl.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XSLT/XSLTEngineImpl.hpp,v
retrieving revision 1.43
retrieving revision 1.44
diff -u -r1.43 -r1.44
--- XSLTEngineImpl.hpp 2000/08/11 21:15:47 1.43
+++ XSLTEngineImpl.hpp 2000/08/22 20:21:31 1.44
@@ -87,8 +87,15 @@
+#if defined(XALAN_AUTO_PTR_REQUIRES_DEFINITION)
+#include <XPath/XPathProcessor.hpp>
+#endif
+
+
+
#include <PlatformSupport/AttributeListImpl.hpp>
#include <PlatformSupport/DOMStringHelper.hpp>
+#include <PlatformSupport/XalanAutoPtr.hpp>
@@ -142,22 +149,32 @@
public:
#if defined(XALAN_NO_NAMESPACES)
-# define XALAN_STD
+ typedef map<XalanDOMString,
+ int,
+ less<XalanDOMString> >
AttributeKeysMapType;
+ typedef map<XalanDOMString,
+ int,
+ less<XalanDOMString> >
ElementKeysMapType;
+ typedef map<const void*,
+ clock_t,
+ less<const void*> >
DurationsTableMapType;
+ typedef vector<const Locator*> LocatorStack;
+ typedef vector<NameSpace>
NamespaceVectorType;
+ typedef vector<NamespaceVectorType> NamespacesStackType;
+ typedef vector<TraceListener*> TraceListenerVectorType;
+ typedef vector<bool> BoolVectorType;
#else
-# define XALAN_STD std::
+ typedef std::map<XalanDOMString, int> AttributeKeysMapType;
+ typedef std::map<XalanDOMString, int> ElementKeysMapType;
+ typedef std::map<const void*, clock_t> DurationsTableMapType;
+ typedef std::vector<const Locator*> LocatorStack;
+ typedef std::vector<NameSpace>
NamespaceVectorType;
+ typedef std::vector<NamespaceVectorType> NamespacesStackType;
+ typedef std::vector<TraceListener*>
TraceListenerVectorType;
+ typedef std::vector<bool>
BoolVectorType;
#endif
-
- typedef XALAN_STD auto_ptr<XPathProcessor>
XPathProcessorPtrType;
- typedef XALAN_STD map<XalanDOMString, int>
AttributeKeysMapType;
- typedef XALAN_STD map<XalanDOMString, int>
ElementKeysMapType;
- typedef XALAN_STD map<const void*, clock_t>
DurationsTableMapType;
- typedef XALAN_STD vector<const Locator*>
LocatorStack;
- typedef XALAN_STD vector<NameSpace>
NamespaceVectorType;
- typedef XALAN_STD vector<NamespaceVectorType>
NamespacesStackType;
- typedef XALAN_STD vector<TraceListener*>
TraceListenerVectorType;
- typedef XALAN_STD vector<bool>
BoolVectorType;
-#undef XALAN_STD
+ typedef XalanAutoPtr<XPathProcessor>
XPathProcessorPtrType;
typedef Function::XObjectArgVectorType
XObjectArgVectorType;
typedef StylesheetExecutionContext::ParamVectorType ParamVectorType;