18 #if !defined(XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680)
19 #define XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680
56 XALAN_DECLARE_XERCES_CLASS(Attributes)
57 XALAN_DECLARE_XERCES_CLASS(AttributeList)
61 XALAN_CPP_NAMESPACE_BEGIN
94 initialize(MemoryManager& theManager);
103 enum { eDefaultAttributeAllocatorBlockSize = 100,
104 eDefaultAttributeNSAllocatorBlockSize = 50,
105 eDefaultCommentAllocatorBlockSize = 10,
106 eDefaultElementAllocatorBlockSize = 100,
107 eDefaultElementNSAllocatorBlockSize = 100,
108 eDefaultPIAllocatorBlockSize = 10,
109 eDefaultTextAllocatorBlockSize = 100,
110 eDefaultTextIWSAllocatorBlockSize = 100,
115 eDefaultValuesStringPoolBucketCount = 997,
138 MemoryManager& theManager,
139 bool fPoolAllText = s_poolAllTextNodes,
140 block_size_type theNamesStringPoolBlockSize = eDefaultNamesStringPoolBlockSize,
141 bucket_count_type theNamesStringPoolBucketCount = eDefaultNamesStringPoolBucketCount,
142 bucket_size_type theNamesStringPoolBucketSize = eDefaultNamesStringPoolBucketSize,
143 block_size_type theValuesStringPoolBlockSize = eDefaultValuesStringPoolBlockSize,
144 bucket_count_type theValuesStringPoolBucketCount = eDefaultValuesStringPoolBucketCount,
145 bucket_size_type theValuesStringPoolBucketSize = eDefaultValuesStringPoolBucketSize);
150 MemoryManager& theManager,
151 bool fPoolAllText = s_poolAllTextNodes,
152 block_size_type theNamesStringPoolBlockSize = eDefaultNamesStringPoolBlockSize,
153 bucket_count_type theNamesStringPoolBucketCount = eDefaultNamesStringPoolBucketCount,
154 bucket_size_type theNamesStringPoolBucketSize = eDefaultNamesStringPoolBucketSize,
155 block_size_type theValuesStringPoolBlockSize = eDefaultValuesStringPoolBlockSize,
156 bucket_count_type theValuesStringPoolBucketCount = eDefaultValuesStringPoolBucketCount,
157 bucket_size_type theValuesStringPoolBucketSize = eDefaultValuesStringPoolBucketSize);
174 MemoryManager& theManager,
175 allocator_size_type theAttributeBlockSize,
176 allocator_size_type theAttributeNSBlockSize,
177 allocator_size_type theCommentBlockSize,
178 allocator_size_type theElementBlockSize,
179 allocator_size_type theElementNSBlockSize,
180 allocator_size_type thePIBlockSize,
181 allocator_size_type theTextBlockSize,
182 allocator_size_type theTextIWSBlockSize,
183 bool fPoolAllText = s_poolAllTextNodes);
189 virtual const XalanDOMString&
192 virtual const XalanDOMString&
193 getNodeValue()
const;
199 getParentNode()
const;
202 getChildNodes()
const;
205 getFirstChild()
const;
208 getLastChild()
const;
211 getPreviousSibling()
const;
214 getNextSibling()
const;
217 getAttributes()
const;
219 virtual XalanDocument*
220 getOwnerDocument()
const;
222 virtual const XalanDOMString&
223 getNamespaceURI()
const;
225 virtual const XalanDOMString&
228 virtual const XalanDOMString&
229 getLocalName()
const;
238 getDocumentElement()
const;
241 getElementById(
const XalanDOMString& elementId)
const;
249 return s_poolAllTextNodes;
255 s_poolAllTextNodes = fPool;
261 const XalanDOMChar* name,
262 const AttributeListType& attrs,
266 bool fAddXMLNamespaceAttribute =
false);
270 const XalanDOMChar* uri,
271 const XalanDOMChar* localname,
272 const XalanDOMChar* qname,
273 const AttributesType& attrs,
277 bool fAddXMLNamespaceAttribute =
false);
281 const XalanDOMChar* tagName,
282 const AttributeListType& attrs,
283 const PrefixResolver& thePrefixResolver,
287 bool fAddXMLNamespaceAttribute =
false);
291 const XalanDOMChar* name,
292 const AttributesType& attrs,
296 bool fAddXMLNamespaceAttribute =
false);
300 const XalanDOMChar* data,
307 createProcessingInstructionNode(
308 const XalanDOMChar* target,
309 const XalanDOMChar* data,
316 const XalanDOMChar* chars,
324 const XalanDOMChar* chars,
331 unparsedEntityDeclaration(
332 const XalanDOMChar* name,
333 const XalanDOMChar* publicId,
334 const XalanDOMChar* systemId,
335 const XalanDOMChar* notationName);
337 const XalanDOMString&
338 getUnparsedEntityURI(
const XalanDOMString& theName)
const;
355 return m_stringBuffer.getMemoryManager();
361 const XalanDOMChar* theName,
362 const XalanDOMChar* theValue,
364 const PrefixResolver& thePrefixResolver);
368 const XalanDOMChar* theName,
369 const XalanDOMChar* theValue,
374 XalanSourceTreeAttr** theAttributeVector,
375 const AttributeListType& attrs,
376 size_t theStartIndex,
378 bool fCreateNamespaces,
379 const PrefixResolver* thePrefixResolver = 0);
383 const XalanDOMChar* theTagName,
384 XalanSourceTreeAttr** theAttributeVector,
385 XalanSize_t theAttributeCount,
389 const PrefixResolver& thePrefixResolver);
393 XalanSourceTreeAttr** theAttributeVector,
394 const AttributesType& theAttributes,
395 size_t theStartIndex,
397 bool fCreateNamespaces);
401 const AttributesType& theAttributes,
402 XalanSourceTreeAttr** theAttributeVector,
404 bool fAddXMLNamespaceAttribute);
406 const XalanDOMString&
408 const XalanDOMChar* chars,
411 const XalanDOMString*
412 getNamespaceForPrefix(
413 const XalanDOMChar* theName,
414 const PrefixResolver& thePrefixResolver,
415 XalanDOMString& thePrefix,
417 const XalanDOMChar** theLocalName = 0);
458 AttributesArrayAllocatorType m_attributesVector;
460 IndexType m_nextIndexValue;
462 const bool m_poolAllText;
464 ElementByIDMapType m_elementsByID;
466 UnparsedEntityURIMapType m_unparsedEntityURIs;
470 XalanDOMString m_stringBuffer;
472 static const XalanDOMString& s_nameString;
474 static bool s_poolAllTextNodes;
479 XALAN_CPP_NAMESPACE_END
483 #endif // !defined(XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680)
static void setPoolAllTextNodes(bool fPool)
AllocatorType::size_type block_size_type
XalanMap< const XalanDOMChar *, XalanSourceTreeElement * > ElementByIDMapType
XalanArrayAllocator< XalanSourceTreeAttr * > AttributesArrayAllocatorType
XalanMap< XalanDOMString, XalanDOMString > UnparsedEntityURIMapType
ArenaAllocatorType::size_type size_type
XalanDOMStringPool::block_size_type block_size_type
#define XALAN_XALANSOURCETREE_EXPORT
XalanDOMStringPool::bucket_size_type bucket_size_type
This class defines an interface for classes that resolve namespace prefixes to their URIs...
XalanDOMStringPool::bucket_count_type bucket_count_type
XalanSourceTreeAttributeAllocator::size_type allocator_size_type
bool operator==(const ElemAttributeSet &theLHS, const ElemAttributeSet &theRHS)
XalanDOMString::size_type length(const XalanDOMString &theString)
Get the length of a XalanDOMString.
XERCES_CPP_NAMESPACE_QUALIFIER AttributeList AttributeListType
Xalan implementation of a hashtable.
XERCES_CPP_NAMESPACE_QUALIFIER Attributes AttributesType
XalanDOMStringHashTable::bucket_size_type bucket_size_type
static bool getPoolAllTextNodes()