You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by db...@apache.org on 2008/11/19 21:07:07 UTC
svn commit: r719046 [5/6] - in /xalan/c/trunk: Projects/Win32/VC6/AllInOne/
Projects/Win32/VC7.1/AllInOne/ Projects/Win32/VC7/AllInOne/
Projects/Win32/VC8/AllInOne/ Projects/Win32/VC9/AllInOne/
src/xalanc/Harness/ src/xalanc/ICUBridge/ src/xalanc/Inclu...
Propchange: xalan/c/trunk/Projects/Win32/VC9/AllInOne/AllInOneWithICU.vcproj
------------------------------------------------------------------------------
svn:eol-style = native
Modified: xalan/c/trunk/src/xalanc/Harness/XalanFileUtility.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/Harness/XalanFileUtility.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/Harness/XalanFileUtility.cpp (original)
+++ xalan/c/trunk/src/xalanc/Harness/XalanFileUtility.cpp Wed Nov 19 12:07:05 2008
@@ -853,7 +853,9 @@
theTreeWalker.traverse(dom);
- destroyObjWithMemMgr(theFormatter, getMemoryManager());
+ XalanDestroy(
+ getMemoryManager(),
+ theFormatter);
XalanSourceTreeDOMSupport domSupport;
XalanSourceTreeParserLiaison parserLiaison(domSupport, getMemoryManager());
Modified: xalan/c/trunk/src/xalanc/Harness/XalanXMLFileReporter.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/Harness/XalanXMLFileReporter.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/Harness/XalanXMLFileReporter.hpp (original)
+++ xalan/c/trunk/src/xalanc/Harness/XalanXMLFileReporter.hpp Wed Nov 19 12:07:05 2008
@@ -33,7 +33,6 @@
#include "xalanc/Include/XalanAutoPtr.hpp"
-#include "xalanc/Include/XalanMemMgrHelper.hpp"
#include "xalanc/Include/XalanMap.hpp"
#include "xalanc/Include/XalanVector.hpp"
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctor.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctor.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctor.cpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctor.cpp Wed Nov 19 12:07:05 2008
@@ -23,7 +23,6 @@
#include "ICUBridge.hpp"
#include "ICUBridgeCollationCompareFunctorImpl.hpp"
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
XALAN_CPP_NAMESPACE_BEGIN
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctorImpl.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctorImpl.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctorImpl.cpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUBridgeCollationCompareFunctorImpl.cpp Wed Nov 19 12:07:05 2008
@@ -114,21 +114,23 @@
}
}
-ICUBridgeCollationCompareFunctorImpl*
-ICUBridgeCollationCompareFunctorImpl::create (MemoryManager& theManager , bool fCacheCollators)
-{
- typedef ICUBridgeCollationCompareFunctorImpl ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
- new (theResult) ThisType(theManager, fCacheCollators);
+
+ICUBridgeCollationCompareFunctorImpl*
+ICUBridgeCollationCompareFunctorImpl::create(
+ MemoryManager& theManager,
+ bool fCacheCollators)
+{
+ ICUBridgeCollationCompareFunctorImpl* theInstance;
+
+ return XalanConstruct(
+ theManager,
+ theInstance,
+ theManager,
+ fCacheCollators);
+}
- theGuard.release();
- return theResult;
-}
ICUBridgeCollationCompareFunctorImpl::~ICUBridgeCollationCompareFunctorImpl()
{
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.cpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.cpp Wed Nov 19 12:07:05 2008
@@ -60,13 +60,12 @@
ICUFormatNumberFunctor*
ICUFormatNumberFunctor::create(MemoryManager& theManager)
{
- typedef ICUFormatNumberFunctor ThisType;
+ typedef ICUFormatNumberFunctor ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
theGuard.release();
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.hpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUFormatNumberFunctor.hpp Wed Nov 19 12:07:05 2008
@@ -255,7 +255,7 @@
const DFAutoPtrType m_defaultDecimalFormat;
- MemoryManager& m_memoryManager;
+ MemoryManager& m_memoryManager;
};
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatFactory.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatFactory.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatFactory.cpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatFactory.cpp Wed Nov 19 12:07:05 2008
@@ -45,17 +45,9 @@
XalanNumberFormat*
ICUXalanNumberFormatFactory::create()
{
- typedef ICUXalanNumberFormatProxy ThisType;
+ ICUXalanNumberFormatProxy* theInstance;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( m_memoryManager , (ThisType*)m_memoryManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(m_memoryManager);
-
- theGuard.release();
-
- return theResult;
+ return XalanConstruct(m_memoryManager, theInstance, m_memoryManager);
}
Modified: xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatProxy.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatProxy.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatProxy.cpp (original)
+++ xalan/c/trunk/src/xalanc/ICUBridge/ICUXalanNumberFormatProxy.cpp Wed Nov 19 12:07:05 2008
@@ -30,8 +30,6 @@
#include <xalanc/PlatformSupport/DOMStringHelper.hpp>
-#include <xalanc/Include/XalanMemMgrAutoPtr.hpp>
-
#include "ICUBridge.hpp"
@@ -41,7 +39,7 @@
-ICUXalanNumberFormatProxy::ICUXalanNumberFormatProxy(MemoryManager& theManager) :
+ICUXalanNumberFormatProxy::ICUXalanNumberFormatProxy(MemoryManager& theManager) :
XalanNumberFormat(theManager),
m_decimalFormat(0)
{
Modified: xalan/c/trunk/src/xalanc/Include/XalanAutoPtr.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/Include/XalanAutoPtr.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/Include/XalanAutoPtr.hpp (original)
+++ xalan/c/trunk/src/xalanc/Include/XalanAutoPtr.hpp Wed Nov 19 12:07:05 2008
@@ -47,7 +47,7 @@
}
XalanAutoPtr(const XalanAutoPtr<Type>& theSource) :
- m_pointer(((XalanAutoPtr<Type>&)theSource).release())
+ m_pointer(const_cast<XalanAutoPtr<Type>&>(theSource).release())
{
}
Modified: xalan/c/trunk/src/xalanc/Include/XalanMemMgrAutoPtr.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/Include/XalanMemMgrAutoPtr.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/Include/XalanMemMgrAutoPtr.hpp (original)
+++ xalan/c/trunk/src/xalanc/Include/XalanMemMgrAutoPtr.hpp Wed Nov 19 12:07:05 2008
@@ -42,9 +42,7 @@
XALAN_USING_XERCES(MemoryManager)
// An auto_ptr-like class that supports the MemoryManager class.
-template<
- class Type,
- bool toCallDestructor = true>
+template<class Type>
class XalanMemMgrAutoPtr
{
public:
@@ -54,6 +52,7 @@
class MemMgrAutoPtrData : public AutoPtrPairType
{
public:
+
MemMgrAutoPtrData():
AutoPtrPairType(0,0)
{
@@ -66,7 +65,7 @@
{
invariants();
}
-
+
bool
isInitilized()const
{
@@ -78,12 +77,9 @@
{
invariants();
- if ( isInitilized() )
+ if (isInitilized())
{
- if ( toCallDestructor )
- {
- this->second->~Type();
- }
+ this->second->~Type();
this->first->deallocate(this->second);
}
@@ -91,8 +87,8 @@
void
reset(
- MemoryManager* memoryManager ,
- Type* dataPointer)
+ MemoryManager* memoryManager,
+ Type* dataPointer)
{
invariants();
@@ -127,13 +123,13 @@
{
}
- XalanMemMgrAutoPtr(const XalanMemMgrAutoPtr<Type, toCallDestructor>& theSource) :
- m_pointerInfo(((XalanMemMgrAutoPtr<Type>&)theSource).release())
+ XalanMemMgrAutoPtr(const XalanMemMgrAutoPtr<Type>& theSource) :
+ m_pointerInfo(const_cast<XalanMemMgrAutoPtr<Type>&>(theSource).release())
{
}
- XalanMemMgrAutoPtr<Type,toCallDestructor>&
- operator=(XalanMemMgrAutoPtr<Type,toCallDestructor>& theRHS)
+ XalanMemMgrAutoPtr<Type>&
+ operator=(XalanMemMgrAutoPtr<Type>& theRHS)
{
if (this != &theRHS)
{
Modified: xalan/c/trunk/src/xalanc/Include/XalanMemoryManagement.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/Include/XalanMemoryManagement.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/Include/XalanMemoryManagement.hpp (original)
+++ xalan/c/trunk/src/xalanc/Include/XalanMemoryManagement.hpp Wed Nov 19 12:07:05 2008
@@ -298,6 +298,74 @@
class Type,
class Param1Type,
class Param2Type,
+ class Param3Type,
+ class Param4Type>
+Type*
+XalanConstruct(
+ MemoryManager& theMemoryManager,
+ Type*& theInstance,
+ const Param1Type* theParam1,
+ const Param2Type* theParam2,
+ const Param3Type* theParam3,
+ Param4Type& theParam4)
+{
+ XalanAllocationGuard theGuard(
+ theMemoryManager,
+ sizeof(Type));
+
+ theInstance =
+ new (theGuard.get()) Type(theParam1, theParam2, theParam3, theParam4);
+
+ theGuard.release();
+
+ return theInstance;
+}
+
+
+
+template<
+ class Type,
+ class Param1Type,
+ class Param2Type,
+ class Param3Type,
+ class Param4Type,
+ class Param5Type,
+ class Param6Type>
+Type*
+XalanConstruct(
+ MemoryManager& theMemoryManager,
+ Type*& theInstance,
+ const Param1Type* theParam1,
+ const Param2Type* theParam2,
+ const Param3Type* theParam3,
+ const Param4Type* theParam4,
+ const Param5Type* theParam5,
+ Param6Type& theParam6)
+{
+ XalanAllocationGuard theGuard(
+ theMemoryManager,
+ sizeof(Type));
+
+ theInstance =
+ new (theGuard.get()) Type(
+ theParam1,
+ theParam2,
+ theParam3,
+ theParam4,
+ theParam5,
+ theParam6);
+
+ theGuard.release();
+
+ return theInstance;
+}
+
+
+
+template<
+ class Type,
+ class Param1Type,
+ class Param2Type,
class Param3Type>
Type*
XalanConstruct(
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/AttributeListImpl.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/AttributeListImpl.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/AttributeListImpl.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/AttributeListImpl.cpp Wed Nov 19 12:07:05 2008
@@ -392,7 +392,7 @@
m_AttributeVector.reserve(eDefaultVectorSize);
}
- typedef XalanMemMgrAutoPtr<AttributeVectorEntry,true> AutoPtr;
+ typedef XalanMemMgrAutoPtr<AttributeVectorEntry> AutoPtr;
AutoPtr theEntry(getMemoryManager(), getNewEntry(name, type, value));
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntry.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntry.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntry.hpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntry.hpp Wed Nov 19 12:07:05 2008
@@ -45,7 +45,7 @@
const XMLChVectorType& theName,
const XMLChVectorType& theValue,
const XMLChVectorType& theType,
- MemoryManager& theManager) :
+ MemoryManager& theManager) :
m_Name(theName,theManager),
m_Value(theValue,theManager),
m_Type(theType,theManager)
@@ -53,10 +53,10 @@
}
AttributeVectorEntry(
- const XMLCh* theName,
- const XMLCh* theValue,
- const XMLCh* theType,
- MemoryManager& theManager) :
+ const XMLCh* theName,
+ const XMLCh* theValue,
+ const XMLCh* theType,
+ MemoryManager& theManager) :
m_Name(theName, theName + length(theName) + 1, theManager),
m_Value(theValue, theValue + length(theValue) + 1, theManager),
m_Type(theType, theType + length(theType) + 1, theManager)
@@ -71,22 +71,21 @@
}
static AttributeVectorEntry*
- create( const XMLCh* theName,
+ create(
+ const XMLCh* theName,
const XMLCh* theValue,
const XMLCh* theType,
- MemoryManager& theManager)
+ MemoryManager& theManager)
{
- typedef AttributeVectorEntry ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theName, theValue, theType, theManager);
-
- theGuard.release();
+ AttributeVectorEntry* theInstance;
- return theResult;
+ return XalanConstruct(
+ theManager,
+ theInstance,
+ theName,
+ theValue,
+ theType,
+ theManager);
}
virtual
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntryExtended.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntryExtended.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntryExtended.hpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/AttributeVectorEntryExtended.hpp Wed Nov 19 12:07:05 2008
@@ -43,10 +43,18 @@
const XMLChVectorType& theType,
const XMLChVectorType& theURI ,
const XMLChVectorType& theLocalName,
- MemoryManager& theManager) :
- AttributeVectorEntry(theName, theValue, theType, theManager),
- m_uri(theURI, theManager),
- m_localName(theLocalName, theManager)
+ MemoryManager& theManager) :
+ AttributeVectorEntry(
+ theName,
+ theValue,
+ theType,
+ theManager),
+ m_uri(
+ theURI,
+ theManager),
+ m_localName(
+ theLocalName,
+ theManager)
{
}
@@ -56,10 +64,20 @@
const XMLCh* theType,
const XMLCh* theURI,
const XMLCh* theLocalName,
- MemoryManager& theManager) :
- AttributeVectorEntry(theName, theValue, theType, theManager),
- m_uri(theURI, theURI + length(theURI) + 1, theManager),
- m_localName(theLocalName, theLocalName + length(theLocalName) + 1,theManager)
+ MemoryManager& theManager) :
+ AttributeVectorEntry(
+ theName,
+ theValue,
+ theType,
+ theManager),
+ m_uri(
+ theURI,
+ theURI + length(theURI) + 1,
+ theManager),
+ m_localName(
+ theLocalName,
+ theLocalName + length(theLocalName) + 1,
+ theManager)
{
}
@@ -68,13 +86,16 @@
const XMLCh* theValue,
const XMLCh* theType,
MemoryManager& theManager) :
- AttributeVectorEntry(theName, theValue, theType,theManager),
+ AttributeVectorEntry(
+ theName,
+ theValue,
+ theType,theManager),
m_uri(theManager),
m_localName(theManager)
{
}
- AttributeVectorEntryExtended(MemoryManager& theManager) :
+ AttributeVectorEntryExtended(MemoryManager& theManager) :
AttributeVectorEntry(theManager),
m_uri(theManager),
m_localName(theManager)
@@ -88,19 +109,19 @@
const XMLCh* theType,
const XMLCh* theURI,
const XMLCh* theLocalName,
- MemoryManager& theManager)
+ MemoryManager& theManager)
{
- typedef AttributeVectorEntryExtended ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theName, theValue, theType, theURI, theLocalName, theManager);
-
- theGuard.release();
+ AttributeVectorEntryExtended* theInstance;
- return theResult;
+ return XalanConstruct(
+ theManager,
+ theInstance,
+ theName,
+ theValue,
+ theType,
+ theURI,
+ theLocalName,
+ theManager);
}
virtual
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/AttributesImpl.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/AttributesImpl.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/AttributesImpl.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/AttributesImpl.cpp Wed Nov 19 12:07:05 2008
@@ -59,8 +59,9 @@
-AttributesImpl::AttributesImpl(const AttributesImpl& theSource,
- MemoryManager& theManager) :
+AttributesImpl::AttributesImpl(
+ const AttributesImpl& theSource,
+ MemoryManager& theManager) :
AttributesType(),
m_attributesVector(theManager),
m_cacheVector(theManager)
@@ -495,7 +496,7 @@
m_attributesVector.reserve(eDefaultVectorSize);
}
- typedef XalanMemMgrAutoPtr<AttributeVectorEntryExtended,true> AutoPtr;
+ typedef XalanMemMgrAutoPtr<AttributeVectorEntryExtended> AutoPtr;
AutoPtr theEntry(getMemoryManager(), getNewEntry(name, type, value, uri, localName));
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanArrayAllocator.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanArrayAllocator.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanArrayAllocator.hpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanArrayAllocator.hpp Wed Nov 19 12:07:05 2008
@@ -28,7 +28,7 @@
#include <utility>
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
+
#include <xalanc/Include/XalanVector.hpp>
#include <xalanc/Include/XalanList.hpp>
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanFStreamOutputStream.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanFStreamOutputStream.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanFStreamOutputStream.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanFStreamOutputStream.cpp Wed Nov 19 12:07:05 2008
@@ -47,20 +47,20 @@
XalanFStreamOutputStream*
XalanFStreamOutputStream::create(
- FILE* theFileHandle,
+ FILE* theFileHandle,
MemoryManager& theManager,
- size_type theBufferSize)
+ size_type theBufferSize)
{
- typedef XalanFStreamOutputStream ThisType;
+ typedef XalanFStreamOutputStream ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theFileHandle,
+ theManager,
+ theBufferSize);
- new (theResult) ThisType(theFileHandle,
- theManager,
- theBufferSize);
-
theGuard.release();
return theResult;
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanFileOutputStream.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanFileOutputStream.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanFileOutputStream.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanFileOutputStream.cpp Wed Nov 19 12:07:05 2008
@@ -223,29 +223,31 @@
#endif
}
+
+
XalanFileOutputStream*
XalanFileOutputStream::create(
const XalanDOMString& theFileName,
- MemoryManager& theManager,
+ MemoryManager& theManager,
size_type theBufferSize)
{
- typedef XalanFileOutputStream ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef XalanFileOutputStream ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
theFileName,
theManager,
theBufferSize);
-
theGuard.release();
return theResult;
}
+
+
XalanFileOutputStream::~XalanFileOutputStream()
{
#if defined(XALAN_WINDOWS)
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanMessageLoader.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanMessageLoader.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanMessageLoader.hpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanMessageLoader.hpp Wed Nov 19 12:07:05 2008
@@ -23,10 +23,14 @@
#include "xalanc/PlatformSupport/PlatformSupportDefinitions.hpp"
-#include "xalanc/XalanDOM/XalanDOMString.hpp"
#include "xalanc/Include/XalanMemMgrAutoPtr.hpp"
-#include "xalanc/Include/XalanMemMgrHelper.hpp"
+
+
+
+#include "xalanc/XalanDOM/XalanDOMString.hpp"
+
+
#include "LocalMsgIndex.hpp"
@@ -49,14 +53,14 @@
class XalanMessageLoaderCreateFunct
{
public:
+
Type*
operator()(MemoryManager& theManager)
{
- XalanMemMgrAutoPtr<Type, false> theGuard( theManager , (Type*)theManager.allocate(sizeof(Type)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(Type)));
- Type* theResult = theGuard.get();
-
- new (theResult) Type(theManager);
+ Type* const theResult =
+ new (theGuard.get()) Type(theManager);
theGuard.release();
@@ -71,10 +75,10 @@
operator()(
MemoryManager& theManager,
XalanMessageLoader* p)
- {
- assert ( p != 0);
+ {
+ assert (p != 0);
- destroyObjWithMemMgr(p, theManager);
+ XalanDestroy(theManager, p);
}
};
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanNumberFormat.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanNumberFormat.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanNumberFormat.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanNumberFormat.cpp Wed Nov 19 12:07:05 2008
@@ -19,9 +19,6 @@
-#include <xalanc/Include/XalanMemMngArrayAllocate.hpp>
-
-
#include <xalanc/Include/STLHelper.hpp>
@@ -189,18 +186,15 @@
// Add two, so we leave one byte at the beginning as empty space
const XalanDOMString::size_type bufsize = len + len / m_groupingSize + 2;
- typedef XalanMemMngArrayAllocate<XalanDOMChar> XalanDOMCharHeapAllocator;
-
- XalanDOMChar* const buffer = XalanDOMCharHeapAllocator::allocate( bufsize,
- result.getMemoryManager());
+ XalanVector<XalanDOMChar> theGuard(result.getMemoryManager());
- XalanMemMgrAutoPtrArray<XalanDOMChar> theGuard(result.getMemoryManager(),
- buffer,
- bufsize);
+ theGuard.resize(bufsize);
- XalanDOMChar* p = buffer + bufsize - 1;
+ XalanDOMChar* const buffer = &*theGuard.begin();
+ XalanDOMChar* p = &theGuard.back();
- *p-- = 0; // null terminate
+ // Leave a null-terminator.
+ --p;
for (XalanDOMString::size_type i = 0, ix = len - 1; i < len && p > buffer; i++, ix--)
{
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanOutputStreamPrintWriter.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanOutputStreamPrintWriter.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanOutputStreamPrintWriter.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanOutputStreamPrintWriter.cpp Wed Nov 19 12:07:05 2008
@@ -46,26 +46,32 @@
m_flushWideChars(false)
{
}
+
+
+
XalanOutputStreamPrintWriter*
XalanOutputStreamPrintWriter::create(
XalanOutputStream& theOutputStream,
bool fAutoFlush)
{
- typedef XalanOutputStreamPrintWriter ThisType;
+ typedef XalanOutputStreamPrintWriter ThisType;
- MemoryManager& theManager = theOutputStream.getMemoryManager();
+ MemoryManager& theManager = theOutputStream.getMemoryManager();
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theOutputStream, fAutoFlush);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theOutputStream,
+ fAutoFlush);
theGuard.release();
return theResult;
}
+
+
XalanOutputStreamPrintWriter::~XalanOutputStreamPrintWriter()
{
flush();
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanStdOutputStream.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanStdOutputStream.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanStdOutputStream.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanStdOutputStream.cpp Wed Nov 19 12:07:05 2008
@@ -81,13 +81,14 @@
StreamType& theOutputStream,
MemoryManager& theManager)
{
- typedef XalanStdOutputStream ThisType;
+ typedef XalanStdOutputStream ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theOutputStream, theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theOutputStream,
+ theManager);
theGuard.release();
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanToXercesTranscoderWrapper.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanToXercesTranscoderWrapper.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanToXercesTranscoderWrapper.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanToXercesTranscoderWrapper.cpp Wed Nov 19 12:07:05 2008
@@ -37,29 +37,37 @@
-XalanToXercesTranscoderWrapper::XalanToXercesTranscoderWrapper(MemoryManager& theManager, XMLTranscoderType& theTranscoder) :
+XalanToXercesTranscoderWrapper::XalanToXercesTranscoderWrapper(
+ MemoryManager& theManager,
+ XMLTranscoderType& theTranscoder) :
XalanOutputTranscoder(theManager),
m_transcoder(&theTranscoder)
{
}
+
+
XalanToXercesTranscoderWrapper*
-XalanToXercesTranscoderWrapper::create(MemoryManager& theManager, XMLTranscoderType& theTranscoder)
+XalanToXercesTranscoderWrapper::create(
+ MemoryManager& theManager,
+ XMLTranscoderType& theTranscoder)
{
- typedef XalanToXercesTranscoderWrapper ThisType;
+ typedef XalanToXercesTranscoderWrapper ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ theTranscoder);
- new (theResult) ThisType(theManager, theTranscoder);
-
- theGuard.release();
+ theGuard.release();
return theResult;
}
+
XalanToXercesTranscoderWrapper::~XalanToXercesTranscoderWrapper()
{
delete m_transcoder;
Modified: xalan/c/trunk/src/xalanc/PlatformSupport/XalanUTF16Transcoder.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/PlatformSupport/XalanUTF16Transcoder.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/PlatformSupport/XalanUTF16Transcoder.cpp (original)
+++ xalan/c/trunk/src/xalanc/PlatformSupport/XalanUTF16Transcoder.cpp Wed Nov 19 12:07:05 2008
@@ -28,28 +28,30 @@
-XalanUTF16Transcoder::XalanUTF16Transcoder(MemoryManager& theManager) :
+XalanUTF16Transcoder::XalanUTF16Transcoder(MemoryManager& theManager) :
XalanOutputTranscoder(theManager)
{
}
+
+
XalanUTF16Transcoder*
XalanUTF16Transcoder::create(MemoryManager& theManager)
{
- typedef XalanUTF16Transcoder ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef XalanUTF16Transcoder ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
- theGuard.release();
+ theGuard.release();
- return theResult;
+ return theResult;
}
+
XalanUTF16Transcoder::~XalanUTF16Transcoder()
{
}
Modified: xalan/c/trunk/src/xalanc/XMLSupport/FormatterToHTML.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XMLSupport/FormatterToHTML.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XMLSupport/FormatterToHTML.cpp (original)
+++ xalan/c/trunk/src/xalanc/XMLSupport/FormatterToHTML.cpp Wed Nov 19 12:07:05 2008
@@ -66,7 +66,7 @@
int indent,
bool escapeURLs,
bool omitMetaTag,
- MemoryManager& theManager) :
+ MemoryManager& theManager) :
FormatterToXML(
writer,
s_emptyString,
@@ -105,7 +105,7 @@
FormatterToHTML*
FormatterToHTML::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
Writer& writer,
const XalanDOMString& encoding,
const XalanDOMString& mediaType,
@@ -116,25 +116,24 @@
bool escapeURLs,
bool omitMetaTag)
{
- typedef FormatterToHTML ThisType;
+ typedef FormatterToHTML ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ writer,
+ encoding,
+ mediaType,
+ doctypeSystem,
+ doctypePublic,
+ doIndent,
+ indent,
+ escapeURLs,
+ omitMetaTag,
+ theManager);
- new (theResult) ThisType(
- writer,
- encoding,
- mediaType,
- doctypeSystem,
- doctypePublic,
- doIndent,
- indent,
- escapeURLs,
- omitMetaTag,
- theManager);
-
- theGuard.release();
+ theGuard.release();
return theResult;
}
Modified: xalan/c/trunk/src/xalanc/XMLSupport/FormatterToText.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XMLSupport/FormatterToText.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XMLSupport/FormatterToText.cpp (original)
+++ xalan/c/trunk/src/xalanc/XMLSupport/FormatterToText.cpp Wed Nov 19 12:07:05 2008
@@ -73,7 +73,7 @@
const XalanDOMString& encoding,
bool normalizeLinefeed,
bool handleIgnorableWhitespace,
- MemoryManager& theManager ) :
+ MemoryManager& theManager) :
FormatterListener(OUTPUT_METHOD_TEXT),
m_writer(&writer),
m_maxCharacter(0),
@@ -96,9 +96,11 @@
update(false);
}
+
+
FormatterToText*
FormatterToText::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
Writer& writer,
const XalanDOMString& encoding,
bool normalizeLinefeed,
@@ -106,16 +108,15 @@
{
typedef FormatterToText ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(
- writer,
- encoding,
- normalizeLinefeed,
- handleIgnorableWhitespace,
- theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ writer,
+ encoding,
+ normalizeLinefeed,
+ handleIgnorableWhitespace,
+ theManager);
theGuard.release();
@@ -123,6 +124,7 @@
}
+
FormatterToText::~FormatterToText()
{
}
Modified: xalan/c/trunk/src/xalanc/XMLSupport/FormatterToXML.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XMLSupport/FormatterToXML.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XMLSupport/FormatterToXML.cpp (original)
+++ xalan/c/trunk/src/xalanc/XMLSupport/FormatterToXML.cpp Wed Nov 19 12:07:05 2008
@@ -323,48 +323,51 @@
initCharsMap();
}
+
+
FormatterToXML*
FormatterToXML::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
Writer& writer,
const XalanDOMString& version,
- bool doIndent ,
- int indent ,
- const XalanDOMString& encoding ,
- const XalanDOMString& mediaType ,
- const XalanDOMString& doctypeSystem ,
- const XalanDOMString& doctypePublic ,
- bool xmlDecl ,
- const XalanDOMString& standalone ,
+ bool doIndent,
+ int indent,
+ const XalanDOMString& encoding,
+ const XalanDOMString& mediaType,
+ const XalanDOMString& doctypeSystem,
+ const XalanDOMString& doctypePublic,
+ bool xmlDecl,
+ const XalanDOMString& standalone,
eFormat format,
- bool fBufferData )
+ bool fBufferData)
{
- typedef FormatterToXML ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef FormatterToXML ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType( writer,
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ writer,
version,
- doIndent ,
- indent ,
- encoding ,
- mediaType ,
- doctypeSystem ,
- doctypePublic ,
- xmlDecl ,
- standalone ,
+ doIndent,
+ indent,
+ encoding,
+ mediaType,
+ doctypeSystem,
+ doctypePublic,
+ xmlDecl,
+ standalone,
format,
fBufferData,
theManager);
-
theGuard.release();
return theResult;
}
+
+
FormatterToXML::~FormatterToXML()
{
}
Modified: xalan/c/trunk/src/xalanc/XPath/NameSpace.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/NameSpace.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/NameSpace.hpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/NameSpace.hpp Wed Nov 19 12:07:05 2008
@@ -58,7 +58,7 @@
NameSpace(
const XalanDOMString& prefix,
const XalanDOMString& uri,
- MemoryManager& theManager) :
+ MemoryManager& theManager) :
m_prefix(prefix, theManager),
m_uri(uri, theManager)
{
@@ -68,22 +68,26 @@
create(
const XalanDOMString& prefix,
const XalanDOMString& uri,
- MemoryManager& theManager)
+ MemoryManager& theManager)
{
- typedef NameSpace ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(prefix, uri, theManager);
-
+ typedef NameSpace ThisType;
+
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
+
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ prefix,
+ uri,
+ theManager);
+
theGuard.release();
-
+
return theResult;
}
- NameSpace( const NameSpace& other,
- MemoryManager& theManager) :
+
+ NameSpace(
+ const NameSpace& other,
+ MemoryManager& theManager) :
m_prefix(other.m_prefix, theManager),
m_uri(other.m_uri, theManager)
{
Modified: xalan/c/trunk/src/xalanc/XPath/XPath.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPath.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPath.cpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPath.cpp Wed Nov 19 12:07:05 2008
@@ -79,19 +79,22 @@
MemoryManager& theManager,
const Locator* theLocator)
{
- typedef XPath Type;
+ typedef XPath ThisType;
- XalanMemMgrAutoPtr<Type, false> theGuard( theManager , (Type*)theManager.allocate(sizeof(Type)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- Type* theResult = theGuard.get();
-
- new (theResult) Type(theManager, theLocator);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ theLocator);
theGuard.release();
return theResult;
}
+
+
XPath::~XPath()
{
}
Modified: xalan/c/trunk/src/xalanc/XPath/XPathEvaluator.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPathEvaluator.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPathEvaluator.cpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPathEvaluator.cpp Wed Nov 19 12:07:05 2008
@@ -69,7 +69,7 @@
XPathEvaluator::XPathEvaluator(MemoryManager& theManager) :
m_xobjectFactory(theManager, XObjectFactoryDefault::create(theManager)),
- m_xpathFactory(theManager, XPathFactoryDefault::createXPathFactoryDefault(theManager)),
+ m_xpathFactory(theManager, XPathFactoryDefault::create(theManager)),
m_constructionContext(theManager, XPathConstructionContextDefault::create(theManager)),
m_executionContext(theManager, XPathExecutionContextDefault::create(theManager)),
m_memoryManager(theManager)
Modified: xalan/c/trunk/src/xalanc/XPath/XPathExecutionContextDefault.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPathExecutionContextDefault.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPathExecutionContextDefault.cpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPathExecutionContextDefault.cpp Wed Nov 19 12:07:05 2008
@@ -109,20 +109,21 @@
XPathExecutionContextDefault*
XPathExecutionContextDefault::create(
MemoryManager& theManager,
- XalanNode* theCurrentNode,
- const NodeRefListBase* theContextNodeList,
- const PrefixResolver* thePrefixResolver)
+ XalanNode* theCurrentNode,
+ const NodeRefListBase* theContextNodeList,
+ const PrefixResolver* thePrefixResolver)
{
- typedef XPathExecutionContextDefault ThisType;
+ typedef XPathExecutionContextDefault ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType( theManager,
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
theCurrentNode,
theContextNodeList,
thePrefixResolver);
+
theGuard.release();
return theResult;
Modified: xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.cpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.cpp Wed Nov 19 12:07:05 2008
@@ -26,35 +26,37 @@
#include "XPath.hpp"
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
XALAN_CPP_NAMESPACE_BEGIN
-XPathFactoryDefault::XPathFactoryDefault(MemoryManager& theManager) :
+XPathFactoryDefault::XPathFactoryDefault(MemoryManager& theManager) :
XPathFactory(),
m_xpaths(theManager)
{
}
+
+
XPathFactoryDefault*
-XPathFactoryDefault::createXPathFactoryDefault(MemoryManager& theManager)
+XPathFactoryDefault::create(MemoryManager& theManager)
{
- typedef XPathFactoryDefault ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef XPathFactoryDefault ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
theGuard.release();
return theResult;
}
+
+
XPathFactoryDefault::~XPathFactoryDefault()
{
reset();
@@ -90,7 +92,9 @@
}
else
{
- destroyObjWithMemMgr(theXPath, m_xpaths.getMemoryManager());
+ XalanDestroy(
+ m_xpaths.getMemoryManager(),
+ const_cast<XPath*>(theXPath));
return true;
}
Modified: xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.hpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPathFactoryDefault.hpp Wed Nov 19 12:07:05 2008
@@ -50,7 +50,7 @@
~XPathFactoryDefault();
static XPathFactoryDefault*
- createXPathFactoryDefault(MemoryManager& theManager);
+ create(MemoryManager& theManager);
// Inherited from XPathFactory...
virtual void
Modified: xalan/c/trunk/src/xalanc/XPath/XPathFunctionTable.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XPath/XPathFunctionTable.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XPath/XPathFunctionTable.cpp (original)
+++ xalan/c/trunk/src/xalanc/XPath/XPathFunctionTable.cpp Wed Nov 19 12:07:05 2008
@@ -65,13 +65,12 @@
virtual Function*
clone(MemoryManager& theManager) const
{
- typedef FunctionNotImplemented Type;
+ typedef FunctionNotImplemented ThisType;
- XalanMemMgrAutoPtr<Type, false> theGuard( theManager , (Type*)theManager.allocate(sizeof(Type)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- Type* theResult = theGuard.get();
-
- new (theResult) Type(m_name);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(m_name);
theGuard.release();
Modified: xalan/c/trunk/src/xalanc/XSLT/ElemForwardCompatible.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ElemForwardCompatible.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ElemForwardCompatible.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ElemForwardCompatible.cpp Wed Nov 19 12:07:05 2008
@@ -96,18 +96,18 @@
XalanFileLoc lineNumber,
XalanFileLoc columnNumber)
{
- typedef ElemForwardCompatible ThisType;
+ typedef ElemForwardCompatible ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(constructionContext,
- stylesheetTree,
- name,
- atts,
- lineNumber,
- columnNumber);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ constructionContext,
+ stylesheetTree,
+ name,
+ atts,
+ lineNumber,
+ columnNumber);
theGuard.release();
Modified: xalan/c/trunk/src/xalanc/XSLT/ElemNumber.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ElemNumber.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ElemNumber.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ElemNumber.cpp Wed Nov 19 12:07:05 2008
@@ -179,7 +179,7 @@
ElemNumber*
ElemNumber::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
StylesheetConstructionContext& constructionContext,
Stylesheet& stylesheetTree,
const AttributeListType& atts,
@@ -187,18 +187,18 @@
XalanFileLoc columnNumber,
unsigned long id)
{
- typedef ElemNumber ThisType;
+ typedef ElemNumber ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(constructionContext,
- stylesheetTree,
- atts,
- lineNumber,
- columnNumber,
- id);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ constructionContext,
+ stylesheetTree,
+ atts,
+ lineNumber,
+ columnNumber,
+ id);
theGuard.release();
@@ -845,7 +845,7 @@
{
// Helper to format local specific numbers to strings.
- XalanMemMgrAutoPtr<XalanNumberFormat, true> formatter(executionContext.createXalanNumberFormat());
+ XalanMemMgrAutoPtr<XalanNumberFormat> formatter(executionContext.createXalanNumberFormat());
typedef XPathExecutionContext::GetCachedString GetCachedString;
Modified: xalan/c/trunk/src/xalanc/XSLT/ElemSort.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ElemSort.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ElemSort.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ElemSort.cpp Wed Nov 19 12:07:05 2008
@@ -131,17 +131,17 @@
XalanFileLoc lineNumber,
XalanFileLoc columnNumber)
{
- typedef ElemSort ThisType;
+ typedef ElemSort ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(constructionContext,
- stylesheetTree,
- atts,
- lineNumber,
- columnNumber);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ constructionContext,
+ stylesheetTree,
+ atts,
+ lineNumber,
+ columnNumber);
theGuard.release();
Modified: xalan/c/trunk/src/xalanc/XSLT/ExtensionNSHandler.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/ExtensionNSHandler.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/ExtensionNSHandler.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/ExtensionNSHandler.cpp Wed Nov 19 12:07:05 2008
@@ -75,39 +75,46 @@
*
* @param namespaceUri the extension namespace URI that I'm implementing
*/
-ExtensionNSHandler::ExtensionNSHandler(const XalanDOMString& namespaceUri,
- MemoryManager& theManager) :
+ExtensionNSHandler::ExtensionNSHandler(
+ const XalanDOMString& namespaceUri,
+ MemoryManager& theManager) :
ExtensionFunctionHandler(namespaceUri, theManager),
m_elements(theManager),
m_componentDescLoaded(false)
{
}
-ExtensionNSHandler*
-ExtensionNSHandler::create(const XalanDOMString& namespaceUri,
- MemoryManager& theManager)
-{
- typedef ExtensionNSHandler ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(namespaceUri, theManager);
+ExtensionNSHandler*
+ExtensionNSHandler::create(
+ const XalanDOMString& namespaceUri,
+ MemoryManager& theManager)
+{
+ typedef ExtensionNSHandler ThisType;
+
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
+
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ namespaceUri,
+ theManager);
theGuard.release();
return theResult;
}
+
+
ExtensionNSHandler::ExtensionNSHandler (
- MemoryManager& theManager,
- const XalanDOMString& namespaceUri,
- const XalanDOMString& elemNames,
- const XalanDOMString& funcNames,
- const XalanDOMString& lang,
- const XalanDOMString& srcURL,
- const XalanDOMString& src) :
+ MemoryManager& theManager,
+ const XalanDOMString& namespaceUri,
+ const XalanDOMString& elemNames,
+ const XalanDOMString& funcNames,
+ const XalanDOMString& lang,
+ const XalanDOMString& srcURL,
+ const XalanDOMString& src) :
ExtensionFunctionHandler(theManager, namespaceUri, funcNames, lang, srcURL, src),
m_elements(theManager),
m_componentDescLoaded(true)
Modified: xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/KeyTable.cpp Wed Nov 19 12:07:05 2008
@@ -198,28 +198,33 @@
}
} // end constructor
+
+
KeyTable*
-KeyTable::create(MemoryManager& theManager,
+KeyTable::create(
+ MemoryManager& theManager,
XalanNode* startNode,
const PrefixResolver& resolver,
const KeyDeclarationVectorType& keyDeclarations,
StylesheetExecutionContext& executionContext)
{
- typedef KeyTable ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef KeyTable ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType( startNode,
- resolver,
- keyDeclarations,
- executionContext);
- theGuard.release();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ startNode,
+ resolver,
+ keyDeclarations,
+ executionContext);
+ theGuard.release();
return theResult;
}
+
+
KeyTable::~KeyTable()
{
}
Modified: xalan/c/trunk/src/xalanc/XSLT/Stylesheet.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/Stylesheet.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/Stylesheet.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/Stylesheet.cpp Wed Nov 19 12:07:05 2008
@@ -30,7 +30,6 @@
#include <xalanc/Include/STLHelper.hpp>
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
@@ -154,7 +153,7 @@
Stylesheet*
Stylesheet::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
StylesheetRoot& root,
const XalanDOMString& baseIdentifier,
StylesheetConstructionContext& constructionContext)
@@ -1401,8 +1400,11 @@
StylesheetConstructionContext& theConstructionContext,
const XalanDOMString& uri)
{
- XalanMemMgrAutoPtr<ExtensionNSHandler, true> theGuard( theConstructionContext.getMemoryManager(),
- ExtensionNSHandler::create(uri, theConstructionContext.getMemoryManager()));
+ XalanMemMgrAutoPtr<ExtensionNSHandler> theGuard(
+ theConstructionContext.getMemoryManager(),
+ ExtensionNSHandler::create(
+ uri,
+ theConstructionContext.getMemoryManager()));
m_extensionNamespaces.insert(uri, theGuard.get());
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetConstructionContextDefault.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetConstructionContextDefault.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetConstructionContextDefault.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetConstructionContextDefault.hpp Wed Nov 19 12:07:05 2008
@@ -444,7 +444,7 @@
XPathFactory& m_xpathFactory;
- typedef XalanMemMgrAutoPtr<XPathProcessor, true> XPathProcessAutoPtr;
+ typedef XalanMemMgrAutoPtr<XPathProcessor> XPathProcessAutoPtr;
XPathProcessAutoPtr m_xpathProcessor;
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContext.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContext.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContext.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContext.hpp Wed Nov 19 12:07:05 2008
@@ -1518,7 +1518,7 @@
};
#endif
- typedef XalanMemMgrAutoPtr<XalanNumberFormat,true> XalanNumberFormatAutoPtr;
+ typedef XalanMemMgrAutoPtr<XalanNumberFormat> XalanNumberFormatAutoPtr;
/**
* Create a new XalanNumberFormat instance.
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.cpp Wed Nov 19 12:07:05 2008
@@ -162,7 +162,7 @@
StylesheetExecutionContextDefault::StylesheetExecutionContextDefault(
- MemoryManager& theManager,
+ MemoryManager& theManager,
XalanNode* theCurrentNode,
const NodeRefListBase* theContextNodeList,
const PrefixResolver* thePrefixResolver) :
@@ -225,29 +225,28 @@
StylesheetExecutionContextDefault*
StylesheetExecutionContextDefault::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
XalanNode* theCurrentNode,
const NodeRefListBase* theContextNodeList,
const PrefixResolver* thePrefixResolver)
{
- typedef StylesheetExecutionContextDefault ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef StylesheetExecutionContextDefault ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
theManager,
theCurrentNode,
theContextNodeList,
thePrefixResolver);
-
theGuard.release();
return theResult;
}
+
StylesheetExecutionContextDefault::~StylesheetExecutionContextDefault()
{
reset();
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetExecutionContextDefault.hpp Wed Nov 19 12:07:05 2008
@@ -1112,7 +1112,7 @@
* The factory that will be used to create result tree fragments based on our
* internal source tree.
*/
- mutable XalanMemMgrAutoPtr<XalanSourceTreeDocument, true> m_sourceTreeResultTreeFactory;
+ mutable XalanMemMgrAutoPtr<XalanSourceTreeDocument> m_sourceTreeResultTreeFactory;
// Holds the current mode.
const XalanQName* m_mode;
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetHandler.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetHandler.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetHandler.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetHandler.cpp Wed Nov 19 12:07:05 2008
@@ -29,7 +29,6 @@
#include <xalanc/Include/STLHelper.hpp>
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
@@ -1351,7 +1350,8 @@
// This will take care of cleaning up the stylesheet if an exception
// is thrown.
- typedef XalanMemMgrAutoPtr<Stylesheet, true> AutpPtr;
+ typedef XalanMemMgrAutoPtr<Stylesheet> AutpPtr;
+
AutpPtr importedStylesheet(
m_constructionContext.getMemoryManager(),
m_constructionContext.create(
Modified: xalan/c/trunk/src/xalanc/XSLT/StylesheetRoot.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/StylesheetRoot.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/StylesheetRoot.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/StylesheetRoot.cpp Wed Nov 19 12:07:05 2008
@@ -115,25 +115,29 @@
}
+
StylesheetRoot*
StylesheetRoot::create(
- MemoryManager& theManager,
- const XalanDOMString& baseIdentifier,
- StylesheetConstructionContext& constructionContext)
-{
- typedef StylesheetRoot ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ MemoryManager& theManager,
+ const XalanDOMString& baseIdentifier,
+ StylesheetConstructionContext& constructionContext)
+{
+ typedef StylesheetRoot ThisType;
+
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
+
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ baseIdentifier,
+ constructionContext);
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(baseIdentifier, constructionContext);
-
theGuard.release();
return theResult;
}
+
+
StylesheetRoot::~StylesheetRoot()
{
}
Modified: xalan/c/trunk/src/xalanc/XSLT/TopLevelArg.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/TopLevelArg.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/TopLevelArg.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/TopLevelArg.cpp Wed Nov 19 12:07:05 2008
@@ -25,56 +25,67 @@
TopLevelArg::TopLevelArg(
- MemoryManager& theManager,
- const XalanQName& name,
- const XalanDOMString& expr) :
+ MemoryManager& theManager,
+ const XalanQName& name,
+ const XalanDOMString& expr) :
m_qname(name, theManager),
m_expression(expr, theManager),
m_xobject(0)
{
}
+
+
+
TopLevelArg*
TopLevelArg::create(
- MemoryManager& theManager,
- const XalanQName& name,
- const XalanDOMString& expr)
+ MemoryManager& theManager,
+ const XalanQName& name,
+ const XalanDOMString& expr)
{
typedef TopLevelArg ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theManager, name, expr);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ name,
+ expr);
theGuard.release();
return theResult;
}
+
+
TopLevelArg::TopLevelArg(
- MemoryManager& theManager,
- const XalanQName& name,
- const XObjectPtr variable) :
+ MemoryManager& theManager,
+ const XalanQName& name,
+ const XObjectPtr variable) :
m_qname(name, theManager),
m_expression(theManager),
m_xobject(variable)
{
}
+
+
TopLevelArg*
TopLevelArg::create(
- MemoryManager& theManager,
- const XalanQName& name,
- const XObjectPtr variable)
+ MemoryManager& theManager,
+ const XalanQName& name,
+ const XObjectPtr variable)
{
typedef TopLevelArg ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager, name, variable);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ name,
+ variable);
theGuard.release();
@@ -82,8 +93,10 @@
}
-TopLevelArg::TopLevelArg(const TopLevelArg& theSource,
- MemoryManager& theManager) :
+
+TopLevelArg::TopLevelArg(
+ const TopLevelArg& theSource,
+ MemoryManager& theManager) :
m_qname(theSource.m_qname, theManager),
m_expression(theSource.m_expression, theManager),
m_xobject(theSource.m_xobject)
Modified: xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.cpp Wed Nov 19 12:07:05 2008
@@ -838,7 +838,7 @@
}
}
- if(nl.getLength() == 0)
+ if (nl.getLength() == 0)
{
const CCGetCachedString theGuard(constructionContext);
@@ -853,11 +853,11 @@
XalanNode* const frag = nl.item(0);
- if(XalanNode::ELEMENT_NODE == frag->getNodeType())
+ if (XalanNode::ELEMENT_NODE == frag->getNodeType())
{
- XalanMemMgrAutoPtr<Stylesheet, true> theGuard;
+ XalanMemMgrAutoPtr<Stylesheet> theGuard;
- if(isRoot)
+ if (isRoot)
{
StylesheetRoot* const theLocalRoot =
constructionContext.create(stringHolder);
@@ -902,7 +902,7 @@
}
else
{
- XalanMemMgrAutoPtr<Stylesheet, true> theGuard;
+ XalanMemMgrAutoPtr<Stylesheet> theGuard;
const XalanDocument* const theOwnerDocument =
fragBase.getNodeType() == XalanNode::DOCUMENT_NODE ?
Modified: xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/XSLTEngineImpl.hpp Wed Nov 19 12:07:05 2008
@@ -177,13 +177,13 @@
const XalanDOMString& m_string;
};
- typedef XalanMemMgrAutoPtr<XPathProcessor, true> XPathProcessorPtrType;
- typedef Function::XObjectArgVectorType XObjectArgVectorType;
- typedef StylesheetExecutionContext::ParamVectorType ParamVectorType;
- typedef XPathConstructionContext::GetCachedString CCGetCachedString;
- typedef XPathExecutionContext::GetCachedString ECGetCachedString;
+ typedef XalanMemMgrAutoPtr<XPathProcessor> XPathProcessorPtrType;
+ typedef Function::XObjectArgVectorType XObjectArgVectorType;
+ typedef StylesheetExecutionContext::ParamVectorType ParamVectorType;
+ typedef XPathConstructionContext::GetCachedString CCGetCachedString;
+ typedef XPathExecutionContext::GetCachedString ECGetCachedString;
- typedef XalanMap<XalanDOMString, XalanParamHolder> ParamMapType;
+ typedef XalanMap<XalanDOMString, XalanParamHolder> ParamMapType;
// Public members
//---------------------------------------------------------------------
Modified: xalan/c/trunk/src/xalanc/XSLT/XSLTInit.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/XSLTInit.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/XSLTInit.cpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/XSLTInit.cpp Wed Nov 19 12:07:05 2008
@@ -50,23 +50,25 @@
}
}
+
+
XSLTInit*
XSLTInit::create(MemoryManager& theManager)
{
- typedef XSLTInit ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef XSLTInit ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
- theGuard.release();
+ theGuard.release();
- return theResult;
+ return theResult;
}
+
XSLTInit::~XSLTInit()
{
--s_initCounter;
@@ -77,14 +79,18 @@
}
}
+
+
MemoryManager&
XSLTInit::getMemoryManager()
{
- assert( s_staticMemoryManager !=0);
+ assert(s_staticMemoryManager != 0);
return *s_staticMemoryManager;
}
+
+
void
XSLTInit::initialize(MemoryManager& theManager)
{
@@ -96,7 +102,7 @@
StylesheetHandler::initialize(theManager);
- s_staticMemoryManager = & theManager;
+ s_staticMemoryManager = &theManager;
}
@@ -114,7 +120,6 @@
Constants::terminate();
s_staticMemoryManager = 0;
-
}
Modified: xalan/c/trunk/src/xalanc/XSLT/XSLTInit.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XSLT/XSLTInit.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XSLT/XSLTInit.hpp (original)
+++ xalan/c/trunk/src/xalanc/XSLT/XSLTInit.hpp Wed Nov 19 12:07:05 2008
@@ -54,7 +54,6 @@
{
public:
- explicit
XSLTInit(MemoryManager& theManager);
~XSLTInit();
@@ -62,10 +61,9 @@
static XSLTInit*
create(MemoryManager& theManager);
- inline MemoryManager&
+ MemoryManager&
getMemoryManager();
-
private:
// Not implemented...
Modified: xalan/c/trunk/src/xalanc/XalanDOM/XalanDOMString.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanDOM/XalanDOMString.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanDOM/XalanDOMString.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanDOM/XalanDOMString.cpp Wed Nov 19 12:07:05 2008
@@ -101,7 +101,7 @@
XalanDOMString*
XalanDOMString::clone(MemoryManager& theManager)
{
- typedef XalanDOMString ThisType;
+ typedef XalanDOMString ThisType;
XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
Modified: xalan/c/trunk/src/xalanc/XalanEXSLT/XalanEXSLTCommonImpl.hpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanEXSLT/XalanEXSLTCommonImpl.hpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanEXSLT/XalanEXSLTCommonImpl.hpp (original)
+++ xalan/c/trunk/src/xalanc/XalanEXSLT/XalanEXSLTCommonImpl.hpp Wed Nov 19 12:07:05 2008
@@ -153,15 +153,14 @@
#endif
clone(MemoryManager& theManager) const
{
- typedef XalanEXSLTFunctionObjectType Type;
+ typedef XalanEXSLTFunctionObjectType ThisType;
- XalanMemMgrAutoPtr<Type, false> theGuard( theManager , (Type*)theManager.allocate(sizeof(Type)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- Type* theResult = theGuard.get();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
- new (theResult) Type(theManager);
-
- theGuard.release();
+ theGuard.release();
return theResult;
}
Modified: xalan/c/trunk/src/xalanc/XalanExtensions/FunctionDistinct.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanExtensions/FunctionDistinct.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanExtensions/FunctionDistinct.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanExtensions/FunctionDistinct.cpp Wed Nov 19 12:07:05 2008
@@ -21,7 +21,6 @@
#include <xalanc/Include/XalanSet.hpp>
-#include <xalanc/Include/XalanMemMgrHelper.hpp>
#include <xalanc/XalanDOM/XalanDOMString.hpp>
Modified: xalan/c/trunk/src/xalanc/XalanSourceTree/XalanSourceTreeDocument.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanSourceTree/XalanSourceTreeDocument.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanSourceTree/XalanSourceTreeDocument.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanSourceTree/XalanSourceTreeDocument.cpp Wed Nov 19 12:07:05 2008
@@ -54,7 +54,7 @@
XalanSourceTreeDocument::XalanSourceTreeDocument(
- MemoryManager& theManager,
+ MemoryManager& theManager,
bool fPoolAllText,
block_size_type theNamesStringPoolBlockSize,
bucket_count_type theNamesStringPoolBucketCount,
@@ -87,36 +87,41 @@
{
}
+
+
XalanSourceTreeDocument*
XalanSourceTreeDocument::create(
- MemoryManager& theManager,
+ MemoryManager& theManager,
bool fPoolAllText,
- block_size_type theNamesStringPoolBlockSize ,
+ block_size_type theNamesStringPoolBlockSize,
bucket_count_type theNamesStringPoolBucketCount,
bucket_size_type theNamesStringPoolBucketSize,
block_size_type theValuesStringPoolBlockSize,
bucket_count_type theValuesStringPoolBucketCount,
bucket_size_type theValuesStringPoolBucketSize)
{
- typedef XalanSourceTreeDocument ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
-
- new (theResult) ThisType(theManager,
- fPoolAllText,
- theNamesStringPoolBlockSize,
- theNamesStringPoolBucketCount,
- theNamesStringPoolBucketSize,
- theValuesStringPoolBlockSize,
- theValuesStringPoolBucketCount,
- theValuesStringPoolBucketSize);
- theGuard.release();
+ typedef XalanSourceTreeDocument ThisType;
- return theResult;
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
+
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ fPoolAllText,
+ theNamesStringPoolBlockSize,
+ theNamesStringPoolBucketCount,
+ theNamesStringPoolBucketSize,
+ theValuesStringPoolBlockSize,
+ theValuesStringPoolBucketCount,
+ theValuesStringPoolBucketSize);
+
+ theGuard.release();
+
+ return theResult;
}
+
+
XalanSourceTreeDocument::XalanSourceTreeDocument(
MemoryManager& theManager,
allocator_size_type theAttributeBlockSize,
Modified: xalan/c/trunk/src/xalanc/XalanTransformer/XalanCAPI.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanTransformer/XalanCAPI.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanTransformer/XalanCAPI.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanTransformer/XalanCAPI.cpp Wed Nov 19 12:07:05 2008
@@ -35,11 +35,14 @@
#include "XalanCAPI.h"
#include "XalanTransformer.hpp"
-#include <xalanc/Include/XalanMemMgrAutoPtr.hpp>
+
+
+#include "xalanc/Include/XalanMemoryManagement.hpp"
XALAN_USING_STD(istrstream)
+XALAN_USING_XALAN(XalanAllocationGuard)
XALAN_USING_XALAN(XalanCompiledStylesheet)
XALAN_USING_XALAN(XalanDOMString)
XALAN_USING_XALAN(XalanParsedSource)
@@ -106,16 +109,14 @@
// Create a XalanTransformer object.
typedef XalanTransformer ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
-
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(theManager);
- theGuard.release();
-
- return (XalanHandle)theResult;
+ theGuard.release();
+ return theResult;
}
Modified: xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultDocumentBuilder.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultDocumentBuilder.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultDocumentBuilder.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultDocumentBuilder.cpp Wed Nov 19 12:07:05 2008
@@ -42,22 +42,29 @@
m_domSupport.setParserLiaison(&m_parserLiaison);
}
+
+
XalanDefaultDocumentBuilder*
-XalanDefaultDocumentBuilder::create(MemoryManager& theManager, const XalanDOMString& theURI)
+XalanDefaultDocumentBuilder::create(
+ MemoryManager& theManager,
+ const XalanDOMString& theURI)
{
- typedef XalanDefaultDocumentBuilder ThisType;
-
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ typedef XalanDefaultDocumentBuilder ThisType;
- ThisType* theResult = theGuard.get();
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- new (theResult) ThisType(theManager, theURI);
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theManager,
+ theURI);
- theGuard.release();
+ theGuard.release();
- return theResult;
+ return theResult;
}
+
+
XalanDefaultDocumentBuilder::~XalanDefaultDocumentBuilder()
{
}
Modified: xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultParsedSource.cpp
URL: http://svn.apache.org/viewvc/xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultParsedSource.cpp?rev=719046&r1=719045&r2=719046&view=diff
==============================================================================
--- xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultParsedSource.cpp (original)
+++ xalan/c/trunk/src/xalanc/XalanTransformer/XalanDefaultParsedSource.cpp Wed Nov 19 12:07:05 2008
@@ -104,30 +104,37 @@
-XalanDefaultParsedSourceHelper::XalanDefaultParsedSourceHelper(const XalanSourceTreeDOMSupport& theSourceDOMSupport,
- MemoryManager& theManager) :
+XalanDefaultParsedSourceHelper::XalanDefaultParsedSourceHelper(
+ const XalanSourceTreeDOMSupport& theSourceDOMSupport,
+ MemoryManager& theManager) :
m_parserLiaison(theManager),
m_domSupport(m_parserLiaison, theSourceDOMSupport)
{
}
+
+
XalanDefaultParsedSourceHelper*
-XalanDefaultParsedSourceHelper::create(const XalanSourceTreeDOMSupport& theSourceDOMSupport,
- MemoryManager& theManager)
+XalanDefaultParsedSourceHelper::create(
+ const XalanSourceTreeDOMSupport& theSourceDOMSupport,
+ MemoryManager& theManager)
{
- typedef XalanDefaultParsedSourceHelper ThisType;
+ typedef XalanDefaultParsedSourceHelper ThisType;
- XalanMemMgrAutoPtr<ThisType, false> theGuard( theManager , (ThisType*)theManager.allocate(sizeof(ThisType)));
+ XalanAllocationGuard theGuard(theManager, theManager.allocate(sizeof(ThisType)));
- ThisType* theResult = theGuard.get();
+ ThisType* const theResult =
+ new (theGuard.get()) ThisType(
+ theSourceDOMSupport,
+ theManager);
- new (theResult) ThisType(theSourceDOMSupport, theManager);
-
theGuard.release();
return theResult;
}
+
+
XalanDefaultParsedSourceHelper::~XalanDefaultParsedSourceHelper()
{
}
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org