Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.10

Classes | Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
XObjectFactory Class Referenceabstract

This class handles the creation of XObjects and manages their lifetime. More...

Inheritance diagram for XObjectFactory:
XObjectFactoryDefault

Classes

struct  DeleteXObjectFunctor
 A public functor for use with stl algorithms. More...
 

Public Types

typedef
XPathExecutionContext::BorrowReturnMutableNodeRefList 
BorrowReturnMutableNodeRefList
 
typedef
XPathExecutionContext::GetAndReleaseCachedString 
GetAndReleaseCachedString
 

Public Member Functions

 XObjectFactory (MemoryManagerType &theManager)
 
virtual ~XObjectFactory ()
 
MemoryManagerTypegetMemoryManager ()
 
bool returnObject (XObject *theXObject)
 Return an XObject to the factory. More...
 
virtual void reset ()=0
 Reset the instance. More...
 
virtual const XObjectPtr createBoolean (bool theValue)=0
 Create a boolean XObject from a boolean value. More...
 
virtual const XObjectPtr createNodeSet (BorrowReturnMutableNodeRefList &theValue)=0
 Create a node set XObject from a node list. More...
 
virtual const XObjectPtr createNodeSet (XalanNode *theValue)=0
 Create a node set XObject from a node. More...
 
virtual const XObjectPtr createNull ()=0
 Create a null XObject. More...
 
virtual const XObjectPtr createNumber (double theValue)=0
 Create a numeric XObject from a number. More...
 
virtual const XObjectPtr createNumber (const XToken &theValue)=0
 Create a numeric XObject from an XToken. More...
 
virtual const XObjectPtr createString (const XalanDOMString &theValue)=0
 Create a string XObject from a string. More...
 
virtual const XObjectPtr createString (const XalanDOMChar *theValue)=0
 Create a string XObject from a null-terminated array of characters. More...
 
virtual const XObjectPtr createString (const XalanDOMChar *theValue, unsigned int theLength)=0
 Create a string XObject from an array of characters. More...
 
virtual const XObjectPtr createString (const XToken &theValue)=0
 Create a string XObject from an XToken. More...
 
virtual const XObjectPtr createStringReference (const XalanDOMString &theValue)=0
 Create a string XObject from a string. More...
 
virtual const XObjectPtr createStringAdapter (const XObjectPtr &theValue)=0
 Create a string XObject that will adapt another XObject to behave like a string. More...
 
virtual const XObjectPtr createString (GetAndReleaseCachedString &theValue)=0
 Create a string XObject from a cached XalanDOMString,. More...
 
virtual const XObjectPtr createUnknown (const XalanDOMString &theValue)=0
 Create an "unknown" XObject from a string. More...
 

Protected Member Functions

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...
 
virtual bool doReturnObject (XObject *theXObject, bool fInReset=false)=0
 Return an XObject to the factory. More...
 

Friends

struct DeleteXObjectFunctor
 

Detailed Description

This class handles the creation of XObjects and manages their lifetime.

Member Typedef Documentation

Constructor & Destructor Documentation

XObjectFactory::XObjectFactory ( MemoryManagerType theManager)
virtual XObjectFactory::~XObjectFactory ( )
virtual

Member Function Documentation

virtual const XObjectPtr XObjectFactory::createBoolean ( bool  theValue)
pure virtual

Create a boolean XObject from a boolean value.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createNodeSet ( BorrowReturnMutableNodeRefList theValue)
pure virtual

Create a node set XObject from a node list.

Parameters
theValuevalue used to create object. theValue will be owned by the new XObject.
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createNodeSet ( XalanNode theValue)
pure virtual

Create a node set XObject from a node.

Parameters
theNOdevalue used to create object.
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createNull ( )
pure virtual

Create a null XObject.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createNumber ( double  theValue)
pure virtual

Create a numeric XObject from a number.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createNumber ( const XToken theValue)
pure virtual

Create a numeric XObject from an XToken.

The XToken instance must be inexistence for the lifetime of the object.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createString ( const XalanDOMString theValue)
pure virtual

Create a string XObject from a string.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createString ( const XalanDOMChar *  theValue)
pure virtual

Create a string XObject from a null-terminated array of characters.

Parameters
theValuea pointer to the array
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createString ( const XalanDOMChar *  theValue,
unsigned int  theLength 
)
pure virtual

Create a string XObject from an array of characters.

Parameters
theValuea pointer to the array theLength the length of the array
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createString ( const XToken theValue)
pure virtual

Create a string XObject from an XToken.

The XToken instance must be inexistence for the lifetime of the object.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createString ( GetAndReleaseCachedString theValue)
pure virtual

Create a string XObject from a cached XalanDOMString,.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createStringAdapter ( const XObjectPtr theValue)
pure virtual

Create a string XObject that will adapt another XObject to behave like a string.

The XObject holds a reference to the other XObject.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createStringReference ( const XalanDOMString theValue)
pure 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

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

virtual const XObjectPtr XObjectFactory::createUnknown ( const XalanDOMString theValue)
pure virtual

Create an "unknown" XObject from a string.

Parameters
theValuevalue used to create object
Returns
pointer to new object

Implemented in XObjectFactoryDefault.

void XObjectFactory::deleteObject ( const XObject theXObject) const
protected

Delete a FactoryObject instance.

Parameters
theXObjectthe XObject instance to delete.
virtual bool XObjectFactory::doReturnObject ( XObject theXObject,
bool  fInReset = false 
)
protectedpure virtual

Return an XObject to the factory.

Parameters
theXObjectXObject to be returned
fInResettrue when called during reset().

Implemented in XObjectFactoryDefault.

MemoryManagerType& XObjectFactory::getMemoryManager ( )
XObject::eObjectType XObjectFactory::getRealType ( const XObject theXObject) const
protected

Return the actual implementation type of an XObject.

Parameters
theXObjectthe XObject
virtual void XObjectFactory::reset ( )
pure virtual

Reset the instance.

This invalidates all existing instances created with this XObjectFactory.

Implemented in XObjectFactoryDefault.

bool XObjectFactory::returnObject ( XObject theXObject)

Return an XObject to the factory.

Parameters
theXObjectThe XObject to be returned
Returns
true if the object belongs to the factory, false if not.

Friends And Related Function Documentation

friend struct DeleteXObjectFunctor
friend

The documentation for this class was generated from the following file:

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

dot

Xalan-C++ XSLT Processor Version 1.10
Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.

Apache Logo