org.apache.xpath.functions

Class FuncLast

Implemented Interfaces:
java.io.Serializable, ExpressionNode, SourceLocator, XPathVisitable

public class FuncLast
extends Function

Execute the Last() function.
See Also:
Serialized Form

Method Summary

XObject
execute(XPathContext xctxt)
Execute the function.
void
fixupVariables(java.util.Vector vars, int globalsSize)
No arguments to process, so this does nothing.
int
getCountOfContextNodeList(XPathContext xctxt)
Get the position in the current context node list.
void
postCompileStep(Compiler compiler)
Figure out if we're executing a toplevel expression.

Methods inherited from class org.apache.xpath.functions.Function

callArgVisitors, callVisitors, checkNumberArgs, deepEquals, execute, postCompileStep, setArg

Methods inherited from class org.apache.xpath.Expression

asIterator, asIteratorRaw, asNode, assertion, bool, canTraverseOutsideSubtree, deepEquals, error, execute, execute, execute, execute, executeCharsToContentHandler, exprAddChild, exprGetChild, exprGetNumChildren, exprGetParent, exprSetParent, fixupVariables, getColumnNumber, getExpressionOwner, getLineNumber, getPublicId, getSystemId, isNodesetExpr, isStableNumber, num, warn, xstr

Method Details

execute

public XObject execute(XPathContext xctxt)
            throws javax.xml.transform.TransformerException
Execute the function. The function must return a valid object.
Overrides:
execute in interface Function
Parameters:
xctxt - The current execution context.
Returns:
A valid XObject.

fixupVariables

public void fixupVariables(java.util.Vector vars,
                           int globalsSize)
No arguments to process, so this does nothing.
Overrides:
fixupVariables in interface Expression

getCountOfContextNodeList

public int getCountOfContextNodeList(XPathContext xctxt)
            throws javax.xml.transform.TransformerException
Get the position in the current context node list.
Parameters:
xctxt - non-null reference to XPath runtime context.
Returns:
The number of nodes in the list.

postCompileStep

public void postCompileStep(Compiler compiler)
Figure out if we're executing a toplevel expression. If so, we can't be inside of a predicate.
Overrides:
postCompileStep in interface Function

Copyright B) 2006 Apache XML Project. All Rights Reserved.