## Xalan-C++ API Documentation

### The Xalan C++ XSLT Processor Version 1.5

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XObjectFactory Class Reference

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

`#include <XObjectFactory.hpp>`

Inheritance diagram for XObjectFactory:

[legend]
List of all members.

## Public Types

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

## Public Methods

- XObjectFactory ()
- virtual ~XObjectFactory ()
- 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 Methods

- 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

typedef XPathExecutionContext::BorrowReturnMutableNodeRefList XObjectFactory::BorrowReturnMutableNodeRefList

typedef XPathExecutionContext::GetAndReleaseCachedString XObjectFactory::GetAndReleaseCachedString

## Constructor & Destructor Documentation

XObjectFactory::XObjectFactory ( | )

XObjectFactory::~XObjectFactory ( | )`[virtual]`

## Member Function Documentation

const XObjectPtr XObjectFactory::createBoolean ( | bool theValue )`[pure virtual]`

  | Create a boolean XObject from a boolean value. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createNodeSet ( | XalanNode * theValue )`[pure virtual]`

  | Create a node set XObject from a node. Parameters:
  theNOde | value used to create object.
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createNodeSet ( | BorrowReturnMutableNodeRefList & theValue )`[pure virtual]`

  | Create a node set XObject from a node list. Parameters:
  theValue | value used to create object. theValue will be owned by the new XObject.
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createNull ( | )`[pure virtual]`

  | Create a null XObject. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

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:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createNumber ( | double theValue )`[pure virtual]`

  | Create a numeric XObject from a number. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createString ( | GetAndReleaseCachedString & theValue )`[pure virtual]`

  | Create a string XObject from a cached XalanDOMString,. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

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:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

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

  | Create a string XObject from an array of characters. Parameters:
  theValue | a pointer to the array
an theLength the length of the array Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createString ( | const XalanDOMChar * theValue )`[pure virtual]`

  | Create a string XObject from a null-terminated array of characters. Parameters:
  theValue | a pointer to the array
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createString ( | const XalanDOMString & theValue )`[pure virtual]`

  | Create a string XObject from a string. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

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:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

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:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

const XObjectPtr XObjectFactory::createUnknown ( | const XalanDOMString & theValue )`[pure virtual]`

  | Create an "unknown" XObject from a string. Parameters:
  theValue | value used to create object
Returns: pointer to new object Reimplemented in XObjectFactoryDefault.

void XObjectFactory::deleteObject ( | const XObject * theXObject ) const`[protected]`

  | Delete a FactoryObject instance. Parameters:
  theXObject | the XObject instance to delete.

bool XObjectFactory::doReturnObject ( | XObject * theXObject,
| bool fInReset = false )`[protected, pure virtual]`

  | Return an XObject to the factory. Parameters:
  theXObject | XObject to be returned
  fInReset | true when called during reset().
Reimplemented in XObjectFactoryDefault.

XObject::eObjectType XObjectFactory::getRealType ( | const XObject & theXObject ) const`[protected]`

  | Return the actual implementation type of an XObject. Parameters:
  theXObject | the XObject

void XObjectFactory::reset ( | )`[pure virtual]`

| Reset the instance. This invalidates all existing instances created with this XObjectFactory. Reimplemented in XObjectFactoryDefault.

bool XObjectFactory::returnObject ( | XObject * theXObject )

  | Return an XObject to the factory. Parameters:
  theXObject | The XObject to be returned
Returns: true if the object belongs to the factory, false if not.

## Friends And Related Function Documentation

struct DeleteXObjectFunctor`[friend]`

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

- XObjectFactory.hpp

Interpreting class diagrams

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

Xalan-C++ XSLT Processor Version 1.5 Copyright © 2000, 2001, 2002, 2003 The Apache Software Foundation. All Rights Reserved.