Xalan-C++ API Reference  1.12.0
Public Types | Public Member Functions | Static Public Member Functions | List of all members
xalanc::KeyTable Class Reference

#include <xalanc/XSLT/KeyTable.hpp>

Public Types

typedef XalanVector< KeyDeclarationKeyDeclarationVectorType
 
typedef NodeListMapTypeDefinitions NodeListMapType
 
typedef XalanMap< XalanQNameByReference, NodeListMapTypeKeysMapType
 

Public Member Functions

 KeyTable (XalanNode *startNode, const PrefixResolver &resolver, const KeyDeclarationVectorType &keyDeclarations, StylesheetExecutionContext &executionContext)
 Build a keys table. More...
 
virtual ~KeyTable ()
 
const MutableNodeRefListgetNodeSetByKey (const XalanQName &qname, const XalanDOMString &ref) const
 Given a valid element key, return the corresponding node list. More...
 

Static Public Member Functions

static KeyTablecreate (MemoryManager &theManager, XalanNode *startNode, const PrefixResolver &resolver, const KeyDeclarationVectorType &keyDeclarations, StylesheetExecutionContext &executionContext)
 

Detailed Description

Definition at line 72 of file KeyTable.hpp.

Member Typedef Documentation

Definition at line 76 of file KeyTable.hpp.

Definition at line 80 of file KeyTable.hpp.

Definition at line 78 of file KeyTable.hpp.

Constructor & Destructor Documentation

xalanc::KeyTable::KeyTable ( XalanNode startNode,
const PrefixResolver resolver,
const KeyDeclarationVectorType keyDeclarations,
StylesheetExecutionContext executionContext 
)

Build a keys table.

Parameters
startNodenode to start iterating from to build the keys index
nscontextstylesheet's namespace context
keyDeclarationsstylesheet's xsl:key declarations
executionContextcurrent execution context
virtual xalanc::KeyTable::~KeyTable ( )
virtual

Member Function Documentation

static KeyTable* xalanc::KeyTable::create ( MemoryManager &  theManager,
XalanNode startNode,
const PrefixResolver resolver,
const KeyDeclarationVectorType keyDeclarations,
StylesheetExecutionContext executionContext 
)
static
const MutableNodeRefList* xalanc::KeyTable::getNodeSetByKey ( const XalanQName qname,
const XalanDOMString ref 
) const

Given a valid element key, return the corresponding node list.

If the name was not declared with xsl:key, this will return null, the identifier is not found, it will return an empty node set, otherwise it will return a nodeset of nodes.

Parameters
namename of the key, which must match the 'name' attribute on xsl:key
refvalue that must match the value found by the 'match' attribute on xsl:key
Returns
pointer to nodeset for key

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