19 #if !defined(XALANDOMSTRINGREUSABLEALLOCATOR_INCLUDE_GUARD_12455133) 20 #define XALANDOMSTRINGREUSABLEALLOCATOR_INCLUDE_GUARD_12455133 37 XALAN_CPP_NAMESPACE_BEGIN
48 #if defined(XALAN_NO_DEFAULT_TEMPLATE_ARGUMENTS) 59 enum { eDefaultBlockSize = 32 };
89 const char* theString,
90 #
if defined(_MSC_VER) && (_MSC_VER <= 1300)
92 data_type_size_type theCount = data_type_size_type(-1));
94 data_type_size_type theCount = data_type_size_type(data_type::npos));
108 const data_type& theSource,
109 data_type_size_type theStartPosition = 0,
110 data_type_size_type theCount = data_type_size_type(data_type::npos));
122 const XalanDOMChar* theString,
123 data_type_size_type theCount = data_type_size_type(data_type::npos));
135 data_type_size_type theCount,
136 XalanDOMChar theChar);
145 return m_allocator.destroyObject(&theDOMString);
154 return m_allocator.ownsObject(theObject);
174 return m_allocator.getBlockCount();
186 return m_allocator.getBlockSize();
198 return m_allocator.getMemoryManager();
210 return m_allocator.getMemoryManager();
222 ArenaAllocatorType m_allocator;
227 XALAN_CPP_NAMESPACE_END
231 #endif // XALANDOMSTRINGREUSABLEALLOCATOR_INCLUDE_GUARD_12455133 ReusableArenaAllocator< data_type > ArenaAllocatorType
const MemoryManager & getMemoryManager() const
Get a reference to the MemoryManager instance for this instance.
void reset()
Delete all instance objects from allocator.
MemoryManager & getMemoryManager()
Get a reference to the MemoryManager instance for this instance.
ArenaAllocatorType::size_type size_type
data_type::size_type data_type_size_type
size_type getBlockCount() const
Get the number of ArenaBlocks currently allocated.
size_type getBlockSize() const
Get size of an ArenaBlock, that is, the number of objects in each block.
XALAN_CPP_NAMESPACE_BEGIN typedef size_t size_type
bool ownsObject(const data_type *theObject)
Determine if an object is owned by the allocator...
bool destroy(XalanDOMString &theDOMString)