16 #if !defined(XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680)
17 #define XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680
54 XALAN_DECLARE_XERCES_CLASS(Attributes)
55 XALAN_DECLARE_XERCES_CLASS(AttributeList)
59 XALAN_CPP_NAMESPACE_BEGIN
102 enum { eDefaultAttributeAllocatorBlockSize = 100,
103 eDefaultAttributeNSAllocatorBlockSize = 50,
104 eDefaultCommentAllocatorBlockSize = 10,
105 eDefaultElementAllocatorBlockSize = 100,
106 eDefaultElementNSAllocatorBlockSize = 100,
107 eDefaultPIAllocatorBlockSize = 10,
108 eDefaultTextAllocatorBlockSize = 100,
109 eDefaultTextIWSAllocatorBlockSize = 100,
114 eDefaultValuesStringPoolBucketCount = 997,
138 bool fPoolAllText = s_poolAllTextNodes,
139 block_size_type theNamesStringPoolBlockSize = eDefaultNamesStringPoolBlockSize,
140 bucket_count_type theNamesStringPoolBucketCount = eDefaultNamesStringPoolBucketCount,
141 bucket_size_type theNamesStringPoolBucketSize = eDefaultNamesStringPoolBucketSize,
142 block_size_type theValuesStringPoolBlockSize = eDefaultValuesStringPoolBlockSize,
143 bucket_count_type theValuesStringPoolBucketCount = eDefaultValuesStringPoolBucketCount,
144 bucket_size_type theValuesStringPoolBucketSize = eDefaultValuesStringPoolBucketSize);
150 bool fPoolAllText = s_poolAllTextNodes,
151 block_size_type theNamesStringPoolBlockSize = eDefaultNamesStringPoolBlockSize,
152 bucket_count_type theNamesStringPoolBucketCount = eDefaultNamesStringPoolBucketCount,
153 bucket_size_type theNamesStringPoolBucketSize = eDefaultNamesStringPoolBucketSize,
154 block_size_type theValuesStringPoolBlockSize = eDefaultValuesStringPoolBlockSize,
155 bucket_count_type theValuesStringPoolBucketCount = eDefaultValuesStringPoolBucketCount,
156 bucket_size_type theValuesStringPoolBucketSize = eDefaultValuesStringPoolBucketSize);
174 allocator_size_type theAttributeBlockSize,
175 allocator_size_type theAttributeNSBlockSize,
176 allocator_size_type theCommentBlockSize,
177 allocator_size_type theElementBlockSize,
178 allocator_size_type theElementNSBlockSize,
179 allocator_size_type thePIBlockSize,
180 allocator_size_type theTextBlockSize,
181 allocator_size_type theTextIWSBlockSize,
182 bool fPoolAllText = s_poolAllTextNodes);
188 virtual const XalanDOMString&
191 virtual const XalanDOMString&
192 getNodeValue()
const;
198 getParentNode()
const;
201 getChildNodes()
const;
204 getFirstChild()
const;
207 getLastChild()
const;
210 getPreviousSibling()
const;
213 getNextSibling()
const;
216 getAttributes()
const;
218 virtual XalanDocument*
219 getOwnerDocument()
const;
221 #if defined(XALAN_NO_COVARIANT_RETURN_TYPE)
226 cloneNode(
bool deep)
const;
245 hasChildNodes()
const;
248 setNodeValue(
const XalanDOMString& nodeValue);
255 const XalanDOMString& feature,
256 const XalanDOMString& version)
const;
258 virtual const XalanDOMString&
259 getNamespaceURI()
const;
261 virtual const XalanDOMString&
264 virtual const XalanDOMString&
265 getLocalName()
const;
268 setPrefix(
const XalanDOMString& prefix);
277 createElement(
const XalanDOMString& tagName);
280 createDocumentFragment();
283 createTextNode(
const XalanDOMString& data);
286 createComment(
const XalanDOMString& data);
289 createCDATASection(
const XalanDOMString& data);
292 createProcessingInstruction(
293 const XalanDOMString& target,
294 const XalanDOMString& data);
297 createAttribute(
const XalanDOMString& name);
300 createEntityReference(
const XalanDOMString& name);
306 getImplementation()
const;
309 getDocumentElement()
const;
312 getElementsByTagName(
const XalanDOMString& tagname)
const;
321 const XalanDOMString& namespaceURI,
322 const XalanDOMString& qualifiedName);
326 const XalanDOMString& namespaceURI,
327 const XalanDOMString& qualifiedName);
330 getElementsByTagNameNS(
331 const XalanDOMString& namespaceURI,
332 const XalanDOMString& localName)
const;
335 getElementById(
const XalanDOMString& elementId)
const;
343 return s_poolAllTextNodes;
349 s_poolAllTextNodes = fPool;
355 const XalanDOMChar* name,
356 const AttributeListType& attrs,
360 bool fAddXMLNamespaceAttribute =
false);
364 const XalanDOMChar* uri,
365 const XalanDOMChar* localname,
366 const XalanDOMChar* qname,
367 const AttributesType& attrs,
371 bool fAddXMLNamespaceAttribute =
false);
375 const XalanDOMChar* tagName,
376 const AttributeListType& attrs,
377 const PrefixResolver& thePrefixResolver,
381 bool fAddXMLNamespaceAttribute =
false);
385 const XalanDOMChar* name,
386 const AttributesType& attrs,
390 bool fAddXMLNamespaceAttribute =
false);
394 const XalanDOMChar* data,
401 createProcessingInstructionNode(
402 const XalanDOMChar* target,
403 const XalanDOMChar* data,
410 const XalanDOMChar* chars,
418 const XalanDOMChar* chars,
425 unparsedEntityDeclaration(
426 const XalanDOMChar* name,
427 const XalanDOMChar* publicId,
428 const XalanDOMChar* systemId,
429 const XalanDOMChar* notationName);
431 const XalanDOMString&
432 getUnparsedEntityURI(
const XalanDOMString& theName)
const;
449 return m_stringBuffer.getMemoryManager();
455 const XalanDOMChar* theName,
456 const XalanDOMChar* theValue,
458 const PrefixResolver& thePrefixResolver);
462 const XalanDOMChar* theName,
463 const XalanDOMChar* theValue,
468 XalanSourceTreeAttr** theAttributeVector,
469 const AttributeListType& attrs,
470 size_t theStartIndex,
472 bool fCreateNamespaces,
473 const PrefixResolver* thePrefixResolver = 0);
477 const XalanDOMChar* theTagName,
478 XalanSourceTreeAttr** theAttributeVector,
479 AttributesCountType theAttributeCount,
483 const PrefixResolver& thePrefixResolver);
487 XalanSourceTreeAttr** theAttributeVector,
488 const AttributesType& theAttributes,
489 size_t theStartIndex,
491 bool fCreateNamespaces);
495 const AttributesType& theAttributes,
496 XalanSourceTreeAttr** theAttributeVector,
498 bool fAddXMLNamespaceAttribute);
500 const XalanDOMString&
502 const XalanDOMChar* chars,
505 const XalanDOMString*
506 getNamespaceForPrefix(
507 const XalanDOMChar* theName,
508 const PrefixResolver& thePrefixResolver,
509 XalanDOMString& thePrefix,
511 const XalanDOMChar** theLocalName = 0);
552 AttributesArrayAllocatorType m_attributesVector;
554 IndexType m_nextIndexValue;
556 const bool m_poolAllText;
558 ElementByIDMapType m_elementsByID;
560 UnparsedEntityURIMapType m_unparsedEntityURIs;
564 XalanDOMString m_stringBuffer;
566 static const XalanDOMString& s_nameString;
568 static bool s_poolAllTextNodes;
573 XALAN_CPP_NAMESPACE_END
577 #endif // !defined(XALANSOURCETREEDOCUMENT_HEADER_GUARD_1357924680)
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition: XalanVector.hpp:1111
Definition: XalanNode.hpp:44
Definition: XalanNodeList.hpp:42
Definition: XalanText.hpp:38
XERCES_CPP_NAMESPACE_QUALIFIER AttributeList AttributeListType
Definition: AttributeListImpl.hpp:39
Definition: XalanSourceTreeAttributeAllocator.hpp:38
XALAN_CPP_NAMESPACE_BEGIN typedef XERCES_CPP_NAMESPACE_QUALIFIER MemoryManager MemoryManagerType
Definition: XalanMemoryManagement.hpp:39
Definition: XalanAttr.hpp:38
static void setPoolAllTextNodes(bool fPool)
Definition: XalanSourceTreeDocument.hpp:347
Definition: XalanDocumentFragment.hpp:38
AllocatorType::size_type block_size_type
Definition: XalanDOMStringPool.hpp:47
NodeType
Definition: XalanNode.hpp:53
Definition: XalanElement.hpp:42
XalanMap< const XalanDOMChar *, XalanSourceTreeElement * > ElementByIDMapType
Definition: XalanSourceTreeDocument.hpp:82
XalanArrayAllocator< XalanSourceTreeAttr * > AttributesArrayAllocatorType
Definition: XalanSourceTreeDocument.hpp:78
Definition: XalanCDATASection.hpp:38
XalanMap< XalanDOMString, XalanDOMString > UnparsedEntityURIMapType
Definition: XalanSourceTreeDocument.hpp:86
size_t bucket_count_type
Definition: XalanDOMStringPool.hpp:48
ArenaAllocatorType::size_type size_type
Definition: XalanSourceTreeAttributeAllocator.hpp:55
Definition: XalanSourceTreeTextAllocator.hpp:38
Definition: XalanDOMStringPool.hpp:37
Definition: XalanDOMStringPool.hpp:43
Definition: XalanSourceTreeProcessingInstructionAllocator.hpp:38
XalanDOMStringPool::block_size_type block_size_type
Definition: XalanSourceTreeDocument.hpp:119
Definition: XalanSourceTreeElementNAAllocator.hpp:38
Definition: XalanDocumentType.hpp:38
Definition: XalanProcessingInstruction.hpp:38
#define XALAN_XALANSOURCETREE_EXPORT
Definition: XalanSourceTreeDefinitions.hpp:33
Definition: XalanDOMStringPool.hpp:42
Definition: XalanNamedNodeMap.hpp:42
Definition: XalanSourceTreeText.hpp:44
XalanDOMStringPool::bucket_size_type bucket_size_type
Definition: XalanSourceTreeDocument.hpp:121
This class defines an interface for classes that resolve namespace prefixes to their URIs...
Definition: PrefixResolver.hpp:37
XalanDOMStringPool::bucket_count_type bucket_count_type
Definition: XalanSourceTreeDocument.hpp:120
Definition: XalanDOMStringAllocator.hpp:39
Definition: XalanSourceTreeElementAAllocator.hpp:38
Definition: XalanDocument.hpp:51
Definition: XalanSourceTreeElementNANSAllocator.hpp:38
Definition: XalanSourceTreeAttr.hpp:50
unsigned long AttributesCountType
Definition: XalanSourceTreeElementA.hpp:41
XalanSourceTreeAttributeAllocator::size_type allocator_size_type
Definition: XalanSourceTreeDocument.hpp:118
Definition: XalanDOMImplementation.hpp:43
Definition: XalanDOMString.hpp:42
XalanDOMString::size_type length(const XalanDOMString &theString)
Get the length of a XalanDOMString.
Definition: DOMStringHelper.hpp:277
Definition: XalanEntityReference.hpp:38
Definition: XalanDOMStringPool.hpp:41
Definition: XalanSourceTreeDocument.hpp:73
Xalan implementation of a hashtable.
Definition: XalanMap.hpp:182
Definition: XalanSourceTreeElement.hpp:44
unsigned int size_type
Definition: XalanDOMString.hpp:53
XERCES_CPP_NAMESPACE_QUALIFIER Attributes AttributesType
Definition: AttributesImpl.hpp:38
Definition: XalanSourceTreeAttributeNSAllocator.hpp:38
Definition: XalanSourceTreeElementANSAllocator.hpp:38
XalanDOMStringHashTable::bucket_size_type bucket_size_type
Definition: XalanDOMStringPool.hpp:49
Definition: XalanSourceTreeProcessingInstruction.hpp:45
XalanSourceTreeElementA::AttributesCountType AttributesCountType
Definition: XalanSourceTreeDocument.hpp:77
static bool getPoolAllTextNodes()
Definition: XalanSourceTreeDocument.hpp:341
Definition: XalanSourceTreeTextIWSAllocator.hpp:38