## org.apache.xalan.extensions
Class ExpressionVisitor

    java.lang.Object
      |
      +--org.apache.xpath.XPathVisitor
            |
            +--org.apache.xalan.extensions.ExpressionVisitor

public class ExpressionVisitor
extends XPathVisitor

When `StylesheetHandler` creates an `XPath`, the ExpressionVisitor visits the XPath expression. For any extension functions it encounters, it instructs StylesheetRoot to register the extension namespace. This mechanism is required to locate extension functions that may be embedded within an expression.

Constructor Summary
`ExpressionVisitor(StylesheetRoot sroot)` The constructor sets the StylesheetRoot variable which is used to register extension namespaces.

Method Summary
`boolean` `visitFunction(ExpressionOwner owner, Function func)` If the function is an extension function, register the namespace.

Methods inherited from class org.apache.xpath.XPathVisitor
`visitBinaryOperation, visitLocationPath, visitMatchPattern, visitNumberLiteral, visitPredicate, visitStep, visitStringLiteral, visitUnaryOperation, visitUnionPath, visitUnionPattern, visitVariableRef`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ExpressionVisitor

    public ExpressionVisitor(StylesheetRoot sroot)

  The constructor sets the StylesheetRoot variable which is used to register extension namespaces.
  Parameters:
    `sroot` - the StylesheetRoot that is being constructed.

Method Detail

### visitFunction

    public boolean visitFunction(ExpressionOwner owner,
                                 Function func)

  If the function is an extension function, register the namespace.
  Parameters:
    `owner` - The current XPath object that owns the expression.
    `func` - The function currently being visited.
  Returns:
    true to continue the visit in the subtree, if any.
  Overrides:
    visitFunction in class XPathVisitor

Copyright © 2006 Apache XML Project. All Rights Reserved.