## Xalan-C++ API Documentation

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

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

# ElemApplyTemplates Class Reference

`#include <ElemApplyTemplates.hpp>`

Inheritance diagram for ElemApplyTemplates:

[legend]
Collaboration diagram for ElemApplyTemplates:

[legend]
List of all members.

## Public Types

- typedef ElemForEach ParentType

## Public Methods

- ElemApplyTemplates (StylesheetConstructionContext &constructionContext, Stylesheet &stylesheetTree, const AttributeListType &atts, int lineNumber, int columnNumber)
    Construct an object corresponding to an "xsl:apply-template" element. More...
- virtual ~ElemApplyTemplates ()
- virtual const XalanDOMString& getElementName () const
    Get a string for the name of the element. More...
- virtual const ElemTemplateElement* startElement (StylesheetExecutionContext &executionContext) const
    Completes "pre-processing" before any sub-elements are invoked (i.e. More...
- virtual void endElement (StylesheetExecutionContext &executionContext) const
    Completes "post-processing" afer any sub-elements are invoked (i.e. More...
- virtual const ElemTemplateElement* getNextChildElemToExecute (StylesheetExecutionContext &executionContext, const ElemTemplateElement *currentElem) const
    Returns the next sub-element (i.e. More...
- virtual const ElemTemplateElement* getFirstChildElemToExecute (StylesheetExecutionContext &executionContext) const
    Returns the first sub-element (i.e. More...

## Protected Methods

- virtual bool childTypeAllowed (int xslToken) const
    Given an xsl token type, determine whether or not a child of that type is allowed. More...
- const ElemTemplateElement* findNextTemplateToExecute (StylesheetExecutionContext &executionContext) const

## Member Typedef Documentation

typedef ElemForEach ElemApplyTemplates::ParentType

## Constructor & Destructor Documentation

ElemApplyTemplates::ElemApplyTemplates ( | StylesheetConstructionContext & constructionContext,
| Stylesheet & stylesheetTree,
| const AttributeListType & atts,
| int lineNumber,
| int columnNumber )

Construct an object corresponding to an "xsl:apply-template" element.

Parameters:

  constructionContext | context for construction of object
  stylesheetTree | stylesheet containing element
  atts | list of attributes for element
  lineNumber | line number in document
  columnNumber | column number in document

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

## Member Function Documentation

bool ElemApplyTemplates::childTypeAllowed ( | int xslToken ) const`[protected, virtual]`

Given an xsl token type, determine whether or not a child of that type is allowed.

This is so derived types can determine whether a particular type of child is allowed for the instance. It is called from appendChildElem().

The default is to allow no types (no children)

Parameters:

  xslToken | The xsl token value of the child.

Returns:
  true if the child is allowed, or false if not.

Reimplemented from ElemTemplateElement.

void ElemApplyTemplates::endElement ( | StylesheetExecutionContext & executionContext ) const`[virtual]`

Completes "post-processing" afer any sub-elements are invoked (i.e.

children, attribute sets and templates). If there are no sub-elements it does nothing

Parameters:

  executionContext | context to execute this element

Reimplemented from ElemForEach.

const ElemTemplateElement * ElemApplyTemplates::findNextTemplateToExecute ( | StylesheetExecutionContext & executionContext ) const`[protected]`

const XalanDOMString & ElemApplyTemplates::getElementName ( | ) const`[virtual]`

Get a string for the name of the element.

Useful for debugging purposes, and error reporting.

Returns:
  A string containing the name of the element.

Reimplemented from ElemForEach.

const ElemTemplateElement * ElemApplyTemplates::getFirstChildElemToExecute ( | StylesheetExecutionContext & executionContext ) const`[virtual]`

Returns the first sub-element (i.e.

children, attribute-sets, templates) to execute.

Parameters:

  executionContext | context to execute element

Returns:
  first sub-element to execute, 0 only if no sub-elements to execute

Reimplemented from ElemTemplateElement.

const ElemTemplateElement * ElemApplyTemplates::getNextChildElemToExecute ( | StylesheetExecutionContext & executionContext,
| const ElemTemplateElement * currentElem ) const`[virtual]`

Returns the next sub-element (i.e.

children, attribute-sets, templates) to execute.

Parameters:

  executionContext | context to execute element
  currentElem | the last sub-element to be executed

Returns:
  next sub-element to execute, 0 only if no more sub-elements to execute

Reimplemented from ElemForEach.

const ElemTemplateElement * ElemApplyTemplates::startElement ( | StylesheetExecutionContext & executionContext ) const`[virtual]`

Completes "pre-processing" before any sub-elements are invoked (i.e.

children, attribute sets and templates). If there are no sub-elements it executes the primary function of the element.

Parameters:

  executionContext | context to execute this element

Reimplemented from ElemForEach.

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

- ElemApplyTemplates.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.10 Copyright © 1999-2004 The Apache Software Foundation. All Rights Reserved.