This class handles the creation of XObjects and manages their lifetime. More...
#include <XObjectFactoryDefault.hpp>
Inherits XObjectFactory.
Public Types | |
enum | { eDefaultXStringBlockSize = 10, eDefaultXNumberBlockSize = 10, eDefaultXNodeSetBlockSize = 10, eDefaultXNodeSetNodeProxyBlockSize = 5, eXNumberCacheMax = 40, eXNodeSetCacheMax = 40, eXStringCacheMax = 40, eXResultTreeFragCacheMax = 40 } |
typedef XNodeSetAllocator::size_type | size_type |
typedef XalanVector< XObject * > | XObjectCollectionType |
typedef XalanVector< XNumber * > | XNumberCacheType |
typedef XalanVector< XNodeSet * > | XNodeSetCacheType |
typedef XalanVector< XString * > | XStringCacheType |
![]() | |
typedef XPathExecutionContext::BorrowReturnMutableNodeRefList | BorrowReturnMutableNodeRefList |
typedef XPathExecutionContext::GetCachedString | GetCachedString |
typedef XPathExecutionContext::GetCachedString | GetAndReleaseCachedString |
Public Member Functions | |
XObjectFactoryDefault (MemoryManager &theManager XALAN_DEFAULT_MEMMGR, size_type theXStringBlockSize=eDefaultXStringBlockSize, size_type theXNumberBlockSize=eDefaultXNumberBlockSize, size_type theXNodeSetBlockSize=eDefaultXNodeSetBlockSize, size_type theXNodeSetNodeProxyBlockSize=eDefaultXNodeSetNodeProxyBlockSize) | |
Construct a factory for creating XObjects. More... | |
virtual | ~XObjectFactoryDefault () |
MemoryManager & | getMemoryManager () |
virtual void | reset () |
Reset the instance. More... | |
virtual const XObjectPtr | createBoolean (bool theValue) |
Create a boolean XObject from a boolean value. More... | |
virtual const XObjectPtr | createNodeSet (BorrowReturnMutableNodeRefList &theValue) |
Create a node set XObject from a node list. More... | |
virtual const XObjectPtr | createNodeSet (XalanNode *theValue) |
Create a node set XObject from a node. More... | |
virtual const XObjectPtr | createNumber (double theValue) |
Create a numeric XObject from a number. More... | |
virtual const XObjectPtr | createNumber (const XToken &theValue) |
Create a numeric XObject from an XToken. More... | |
virtual const XObjectPtr | createString (const XalanDOMString &theValue) |
Create a string XObject from a string. More... | |
virtual const XObjectPtr | createString (const XalanDOMChar *theValue) |
Create a string XObject from a null-terminated array of characters. More... | |
virtual const XObjectPtr | createString (const XalanDOMChar *theValue, XalanSize_t theLength) |
Create a string XObject from an array of characters. More... | |
virtual const XObjectPtr | createString (const XToken &theValue) |
Create a string XObject from an XToken. More... | |
virtual const XObjectPtr | createStringReference (const XalanDOMString &theValue) |
Create a string XObject from a string. More... | |
virtual const XObjectPtr | createStringAdapter (const XObjectPtr &theValue, XPathExecutionContext &theExecutionContext) |
Create a string XObject that will adapt another XObject to behave like a string. More... | |
virtual const XObjectPtr | createString (GetCachedString &theValue) |
Create a string XObject from a cached XalanDOMString,. More... | |
virtual const XObjectPtr | createUnknown (const XalanDOMString &theValue) |
Create an "unknown" XObject from a string. More... | |
virtual void | holdReference (XObjectPtr theValue) |
Hold a reference to an XObject instance until the factory is reset. More... | |
![]() | |
XObjectFactory (MemoryManager &theManager) | |
virtual | ~XObjectFactory () |
MemoryManager & | getMemoryManager () |
bool | returnObject (XObject *theXObject) |
Return an XObject to the factory. More... | |
Static Public Member Functions | |
static XObjectFactoryDefault * | create (MemoryManager &theManager, size_type theXStringBlockSize=eDefaultXStringBlockSize, size_type theXNumberBlockSize=eDefaultXNumberBlockSize, size_type theXNodeSetBlockSize=eDefaultXNodeSetBlockSize, size_type theXNodeSetNodeProxyBlockSize=eDefaultXNodeSetNodeProxyBlockSize) |
Protected Member Functions | |
virtual bool | doReturnObject (XObject *theXObject, bool fInReset=false) |
Return an XObject to the factory. More... | |
![]() | |
XObject::eObjectType | getRealType (const XObject &theXObject) const |
Return the actual implementation type of an XObject. More... | |
void | deleteObject (const XObject *theXObject) const |
Delete a FactoryObject instance. More... | |
This class handles the creation of XObjects and manages their lifetime.
Definition at line 58 of file XObjectFactoryDefault.hpp.
Definition at line 75 of file XObjectFactoryDefault.hpp.
Definition at line 162 of file XObjectFactoryDefault.hpp.
Definition at line 161 of file XObjectFactoryDefault.hpp.
Definition at line 160 of file XObjectFactoryDefault.hpp.
Definition at line 163 of file XObjectFactoryDefault.hpp.
anonymous enum |
Enumerator | |
---|---|
eDefaultXStringBlockSize | |
eDefaultXNumberBlockSize | |
eDefaultXNodeSetBlockSize | |
eDefaultXNodeSetNodeProxyBlockSize | |
eXNumberCacheMax | |
eXNodeSetCacheMax | |
eXStringCacheMax | |
eXResultTreeFragCacheMax |
Definition at line 63 of file XObjectFactoryDefault.hpp.
|
explicit |
Construct a factory for creating XObjects.
theXStringBlockSize | allocation block size |
theXNumberBlockSize | allocation block size |
theXNodeSetBlockSize | allocation block size |
|
virtual |
|
static |
|
virtual |
Create a boolean XObject from a boolean value.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a node set XObject from a node list.
theValue | value used to create object. theValue will be owned by the new XObject. |
Implements XObjectFactory.
|
virtual |
Create a node set XObject from a node.
theNOde | value used to create object. |
Implements XObjectFactory.
|
virtual |
Create a numeric XObject from a number.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a numeric XObject from an XToken.
The XToken instance must be inexistence for the lifetime of the object.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a string XObject from a string.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a string XObject from a null-terminated array of characters.
theValue | a pointer to the array |
Implements XObjectFactory.
|
virtual |
Create a string XObject from an array of characters.
theValue | a pointer to the array theLength the length of the array |
Implements XObjectFactory.
|
virtual |
Create a string XObject from an XToken.
The XToken instance must be inexistence for the lifetime of the object.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a string XObject from a cached XalanDOMString,.
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create a string XObject that will adapt another XObject to behave like a string.
The XObject holds a reference to the other XObject.
theValue | value used to create object theExecutionContext The current execution context |
Implements XObjectFactory.
|
virtual |
Create a string XObject from a string.
The XObject will hold a reference to the supplied string, so the string must be in scope for the lifetime of the instance
theValue | value used to create object |
Implements XObjectFactory.
|
virtual |
Create an "unknown" XObject from a string.
theValue | value used to create object |
Implements XObjectFactory.
|
protectedvirtual |
Return an XObject to the factory.
Implements XObjectFactory.
|
inline |
Definition at line 105 of file XObjectFactoryDefault.hpp.
|
virtual |
Hold a reference to an XObject instance until the factory is reset.
This is needed in a very few cases when the object lifetime needs to extend after the execution of an XPath expression.
theValue | The XObjectPtr instance. |
Implements XObjectFactory.
|
virtual |
Reset the instance.
This invalidates all existing instances created with this XObjectFactory.
Implements XObjectFactory.
Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.
Xalan-C++ XSLT Processor Version 1.11 |
|