com.icl.saxon.expr
Class Function

java.lang.Object
  extended bycom.icl.saxon.expr.Expression
      extended bycom.icl.saxon.expr.Function
Direct Known Subclasses:
BooleanFn, Ceiling, Concat, Contains, Count, Current, Document, ElementAvailable, Floor, FormatNumber, FunctionAvailable, FunctionProxy, GenerateId, Id, Key, Lang, Last, LocalName, NameFn, NamespaceURI, NormalizeSpace, Not, NumberFn, Position, Round, StartsWith, StringFn, StringLength, StyleSheetFunctionCall, Substring, SubstringAfter, SubstringBefore, Sum, SystemProperty, Translate, UnparsedEntityURI

public abstract class Function
extends Expression

Abstract superclass for system-defined and user-defined functions


Field Summary
protected  Expression[] argument
           
 
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
 
Constructor Summary
Function()
           
 
Method Summary
 void addArgument(Expression expr)
          Method to add an argument during function definition.
protected  int checkArgumentCount(int min, int max)
          Check number of arguments.
 void display(int level)
          Diagnostic print of expression structure
abstract  java.lang.String getName()
          Get the name of the function.
 int getNumberOfArguments()
          Determine the number of actual arguments supplied in the function call
 
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, enumerate, evaluate, evaluateAsBoolean, evaluateAsNodeSet, evaluateAsNumber, evaluateAsString, getDataType, getDependencies, getStaticContext, indent, isContextDocumentNodeSet, make, outputStringValue, reduce, setStaticContext, simplify, usesCurrent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

argument

protected Expression[] argument
Constructor Detail

Function

public Function()
Method Detail

addArgument

public void addArgument(Expression expr)
Method to add an argument during function definition.


getNumberOfArguments

public int getNumberOfArguments()
Determine the number of actual arguments supplied in the function call


getName

public abstract java.lang.String getName()
Get the name of the function. This method must be implemented in all subclasses.

Returns:
the name of the function, as used in XSL expressions, but excluding its namespace prefix

checkArgumentCount

protected int checkArgumentCount(int min,
                                 int max)
                          throws XPathException
Check number of arguments.
A convenience routine for use in subclasses.

Parameters:
min - the minimum number of arguments allowed
max - the maximum number of arguments allowed
Returns:
the actual number of arguments
Throws:
XPathException - if the number of arguments is out of range

display

public void display(int level)
Diagnostic print of expression structure

Specified by:
display in class Expression