## com.icl.saxon.functions
Class FunctionAvailable

    java.lang.Object
      |
      +--com.icl.saxon.expr.Expression
            |
            +--com.icl.saxon.expr.Function
                  |
                  +--com.icl.saxon.functions.FunctionAvailable

public class FunctionAvailable
extends Function

Fields inherited from class com.icl.saxon.expr.Function
`argument`

Fields inherited from class com.icl.saxon.expr.Expression
`staticContext`

Constructor Summary
`FunctionAvailable()`

Method Summary
`Value` `evaluate(Context c)` Evaluate in a general context
`boolean` `evaluateAsBoolean(Context c)` Evaluate the function in a boolean context
`int` `getDataType()` Determine the data type of the expression
`int` `getDependencies()` Determine the dependencies
`java.lang.String` `getName()` Function name (for diagnostics)
`Expression` `reduce(int dep, Context c)` Reduce the dependencies
`Expression` `simplify()` Simplify and validate.

Methods inherited from class com.icl.saxon.expr.Function
`addArgument, checkArgumentCount, display, getNumberOfArguments`

Methods inherited from class com.icl.saxon.expr.Expression
`containsReferences, enumerate, evaluateAsNodeSet, evaluateAsNumber, evaluateAsString, getStaticContext, indent, isContextDocumentNodeSet, make, outputStringValue, setStaticContext, usesCurrent`

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

Constructor Detail

### FunctionAvailable

    public FunctionAvailable()

Method Detail

### getName

    public java.lang.String getName()

  Function name (for diagnostics)
  Overrides:
    `getName` in class `Function`
  Following copied from class: `com.icl.saxon.expr.Function`
  Returns:
    the name of the function, as used in XSL expressions, but excluding its namespace prefix

### getDataType

    public int getDataType()

  Determine the data type of the expression
  Overrides:
    `getDataType` in class `Expression`
  Returns:
    Value.BOOLEAN

### simplify

    public Expression simplify()
                        throws XPathException

  Simplify and validate. This is a pure function so it can be simplified in advance if the arguments are known
  Overrides:
    `simplify` in class `Expression`
  Following copied from class: `com.icl.saxon.expr.Expression`
  Returns:
    the simplified expression

### evaluateAsBoolean

    public boolean evaluateAsBoolean(Context c)
                              throws XPathException

  Evaluate the function in a boolean context
  Overrides:
    `evaluateAsBoolean` in class `Expression`
  Following copied from class: `com.icl.saxon.expr.Expression`
  Parameters:
    `context` - The context in which the expression is to be evaluated
  Returns:
    the value of the expression, evaluated in the current context

### evaluate

    public Value evaluate(Context c)
                   throws XPathException

  Evaluate in a general context
  Overrides:
    `evaluate` in class `Expression`
  Following copied from class: `com.icl.saxon.expr.Expression`
  Parameters:
    `context` - The context in which the expression is to be evaluated
  Returns:
    the value of the expression, evaluated in the current context

### getDependencies

    public int getDependencies()

  Determine the dependencies
  Overrides:
    `getDependencies` in class `Expression`

### reduce

    public Expression reduce(int dep,
                             Context c)
                      throws XPathException

  Reduce the dependencies
  Overrides:
    `reduce` in class `Expression`
  Following copied from class: `com.icl.saxon.expr.Expression`
  Parameters:
    `dependencies` - The dependencies to be removed, e.g. Context.VARIABLES
    `context` - The context to be used for the partial evaluation
  Returns:
    a new expression (or Value) that does not have any of the specified dependencies