Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.saxonica.functions.extfn
Class Evaluate

    java.lang.Object
      net.sf.saxon.lib.ExtensionFunctionDefinition
          com.saxonica.functions.extfn.Evaluate

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  Eval, EvaluateNode, ExpressionFn

    public class Evaluate

extends ExtensionFunctionDefinition

This class implements the saxon:evaluate() extension function

See Also:
  Serialized Form

Nested Class Summary
`protected static class` | `Evaluate.EvaluateCall`
`static class` | `Evaluate.PreparedExpression` Inner class PreparedExpression represents a compiled XPath expression together with the standard variables $p1 ..

Constructor Summary
`Evaluate()`

Method Summary
`boolean` | `dependsOnFocus()` Ask whether the result of the function depends on the focus
`SequenceType[]` | `getArgumentTypes()` Get the required types for the arguments of this function, counting from zero
`StructuredQName` | `getFunctionQName()` Get the function name, as a QName
`int` | `getMaximumNumberOfArguments()` Get the maximum number of arguments allowed by the function
`int` | `getMinimumNumberOfArguments()` Get the minimum number of arguments required by the function
`SequenceType` | `getResultType(SequenceType[] argumentTypes)` Get the type of the result of the function
`ExtensionFunctionCall` | `makeCallExpression()` Create a call on this function.

Methods inherited from class net.sf.saxon.lib.ExtensionFunctionDefinition
`getCompilerForJava, hasSideEffects, trustResultType`

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

Constructor Detail

### Evaluate

    public Evaluate()

Method Detail

### getFunctionQName

    public StructuredQName getFunctionQName()

  Get the function name, as a QName

  Specified by:
    `getFunctionQName` in class `ExtensionFunctionDefinition`
  Returns:
    the QName of the function

### getMinimumNumberOfArguments

    public int getMinimumNumberOfArguments()

  Get the minimum number of arguments required by the function

  Overrides:
    `getMinimumNumberOfArguments` in class `ExtensionFunctionDefinition`
  Returns:
    the minimum number of arguments that must be supplied in a call to this function

### getMaximumNumberOfArguments

    public int getMaximumNumberOfArguments()

  Get the maximum number of arguments allowed by the function

  Overrides:
    `getMaximumNumberOfArguments` in class `ExtensionFunctionDefinition`
  Returns:
    the maximum number of arguments that may be supplied in a call to this function

### getArgumentTypes

    public SequenceType[] getArgumentTypes()

  Get the required types for the arguments of this function, counting from zero

  Specified by:
    `getArgumentTypes` in class `ExtensionFunctionDefinition`
  Returns:
    the required types of the argument, as defined by the function signature. Normally this should be an array of size `getMaximumNumberOfArguments()`; however for functions that allow a variable number of arguments, the array can be smaller than this, with the last entry in the array providing the required type for all the remaining arguments.

### getResultType

    public SequenceType getResultType(SequenceType[] argumentTypes)

  Get the type of the result of the function

  Specified by:
    `getResultType` in class `ExtensionFunctionDefinition`
  Parameters:
    `argumentTypes` - the static types of the arguments to the function. This is provided so that a more precise result type can be returned in the common case where the type of the result depends on the type of the first argument.
  Returns:
    the return type of the function, as defined by its function signature

### dependsOnFocus

    public boolean dependsOnFocus()

  Ask whether the result of the function depends on the focus

  Overrides:
    `dependsOnFocus` in class `ExtensionFunctionDefinition`
  Returns:
    true if the result of the function depends on the context item, position, or size. The default implementation returns false. This must be set to true if the function makes use of any of these values from the dynamic context.

### makeCallExpression

    public ExtensionFunctionCall makeCallExpression()

  Create a call on this function. This method is called by the compiler when it identifies a function call that calls this function.

  Specified by:
    `makeCallExpression` in class `ExtensionFunctionDefinition`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) 2004-2010 Saxonica Limited. All rights reserved.