## 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

# ElemVariable Class Reference

`#include <ElemVariable.hpp>`

Inheritance diagram for ElemVariable:

[legend]
Collaboration diagram for ElemVariable:

[legend]
List of all members.

## Public Types

- typedef ElemTemplateElement ParentType

## Public Methods

- ElemVariable (StylesheetConstructionContext &constructionContext, Stylesheet &stylesheetTree, const AttributeListType &atts, int lineNumber, int columnNumber)
    Construct an object corresponding to an "xsl:variable" element. More...
- virtual ~ElemVariable ()
- bool isTopLevel () const
    Determines if this is a top level variable. More...
- virtual const XalanQName& getNameAttribute () const
    Get the QName associated with any name attribute of this element. More...
- virtual void addToStylesheet (StylesheetConstructionContext &constructionContext, Stylesheet &theStylesheet)
    Called during compilation when an instance is not parented by another element, and thus, is a child of the stylesheet.. More...
- virtual const XalanDOMString& getElementName () const
    Get a string for the name of the element. More...
- const ElemTemplateElement* startElement (StylesheetExecutionContext &executionContext) const
    Completes "pre-processing" before any sub-elements are invoked (i.e. More...
- void endElement (StylesheetExecutionContext &executionContext) const
    Completes "post-processing" afer any sub-elements are invoked (i.e. More...
- const XObjectPtr getValue (StylesheetExecutionContext &executionContext, XalanNode *sourceNode) const
- virtual void setParentNodeElem (ElemTemplateElement *theParent)
    Set the parent node. More...
- virtual const XPath* getXPath (unsigned int index=0) const
    Get XPath pattern/expression of one of the element atribute. More...

## Protected Methods

- ElemVariable (StylesheetConstructionContext &constructionContext, Stylesheet &stylesheetTree, const AttributeListType &atts, int lineNumber, int columnNumber, int xslToken)
    Construct an object corresponding to an "xsl:variable" element. More...
- void init (StylesheetConstructionContext &constructionContext, Stylesheet &stylesheetTree, const AttributeListType &atts)
    Do common initialization. More...

## Protected Attributes

- const XalanQName* m_qname

## Member Typedef Documentation

typedef ElemTemplateElement ElemVariable::ParentType

## Constructor & Destructor Documentation

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

Construct an object corresponding to an "xsl:variable" 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

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

ElemVariable::ElemVariable ( | StylesheetConstructionContext & constructionContext,
| Stylesheet & stylesheetTree,
| const AttributeListType & atts,
| int lineNumber,
| int columnNumber,
| int xslToken )`[protected]`

Construct an object corresponding to an "xsl:variable" 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

## Member Function Documentation

void ElemVariable::addToStylesheet ( | StylesheetConstructionContext & constructionContext,
| Stylesheet & theStylesheet )`[virtual]`

Called during compilation when an instance is not parented by another element, and thus, is a child of the stylesheet..

Parameters:

  constructionContext | The current construction context
  theStylesheet | The owning stylesheet

Returns:
  nothing

Reimplemented from ElemTemplateElement.

void ElemVariable::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 ElemTemplateElement.

Reimplemented in ElemParam.

const XalanDOMString & ElemVariable::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 ElemTemplateElement.

Reimplemented in ElemParam.

const XalanQName & ElemVariable::getNameAttribute ( | ) const`[virtual]`

Get the QName associated with any name attribute of this element.

If the element has no name attribute, this will be an empty QName.

Returns:
  A string containing the name of the element.

Reimplemented from ElemTemplateElement.

const XObjectPtr ElemVariable::getValue ( | StylesheetExecutionContext & executionContext,
| XalanNode * sourceNode ) const

const XPath * ElemVariable::getXPath ( | unsigned int index = 0 ) const`[virtual]`

Get XPath pattern/expression of one of the element atribute.

@index number of the attribute. If an attribute has more then one attribute with pattern/expression,the order of the returned expressions are undefined

Returns:
  pointer or null

Reimplemented from ElemTemplateElement.

void ElemVariable::init ( | StylesheetConstructionContext & constructionContext,
| Stylesheet & stylesheetTree,
| const AttributeListType & atts )`[protected]`

Do common initialization.

Parameters:

  constructionContext | context for construction of object
  stylesheetTree | stylesheet containing element
  atts | list of attributes for element

bool ElemVariable::isTopLevel ( | ) const

Determines if this is a top level variable.

Returns:
  true if it is a top level variable

void ElemVariable::setParentNodeElem ( | ElemTemplateElement * theParent )`[virtual]`

Set the parent node.

theParent - the new value for the parent.

Returns:
  nothing

Reimplemented from ElemTemplateElement.

const ElemTemplateElement * ElemVariable::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 ElemTemplateElement.

Reimplemented in ElemParam.

## Member Data Documentation

const XalanQName * ElemVariable::m_qname`[protected]`

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

- ElemVariable.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.