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.extra
Class FirstClassFunction

    java.lang.Object
      net.sf.saxon.value.Value
          net.sf.saxon.value.AtomicValue
              net.sf.saxon.value.ObjectValue
                  com.saxonica.extra.FirstClassFunction

All Implemented Interfaces:
  Expression, Item, java.io.Serializable, ValueRepresentation

public class FirstClassFunction
extends ObjectValue

A FirstClassFunction is a value that encapsulates a function; it can therefore be manipulated like any other value: for example it can be assigned to a variable and passed as a parameter to a function. A FirstClassFunction can be created using the extension function saxon:function(), and can be invoked using the extension function saxon:call().

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.value.Value
`EMPTY_CLASS_ARRAY`

Fields inherited from interface net.sf.saxon.om.ValueRepresentation
`EMPTY_VALUE_ARRAY`

Fields inherited from interface net.sf.saxon.expr.Expression
`EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD`

Constructor Summary
`FirstClassFunction(UserFunctionCall exp)`

Method Summary
`static FirstClassFunction` | `bind(int fingerprint, java.lang.String uri, java.lang.String local, int arity, StaticContext env)`
`int` | `getArity()`
`ValueRepresentation` | `invoke(ValueRepresentation[] args, XPathContext context)`

Methods inherited from class net.sf.saxon.value.ObjectValue
`convertPrimitive, convertToJava, effectiveBooleanValue, equals, getItemType, getObject, getStringValue, hashCode, setValue`

Methods inherited from class net.sf.saxon.value.AtomicValue
`checkPermittedContents, convert, convert, display, evaluateAsString, evaluateItem, getCardinality, getComponent, getImplementationMethod, getLength, getPrimitiveValue, getStringValueCS, getTypedValue, hasBuiltInType, iterate, process, schemaEquals, toString`

Methods inherited from class net.sf.saxon.value.Value
`asItem, asIterator, asValue, collapseWhitespace, convert, convertJavaObjectToXPath, getDependencies, getIterator, getParentExpression, getSpecialProperties, itemAt, iterateSubExpressions, makeQNameValue, normalizeWhitespace, optimize, promote, reduce, simplify, stringToNumber, trimWhitespace, typeCheck`

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

Constructor Detail

### FirstClassFunction

    public FirstClassFunction(UserFunctionCall exp)

Method Detail

### getArity

    public int getArity()

### bind

    public static FirstClassFunction bind(int fingerprint,
                                          java.lang.String uri,
                                          java.lang.String local,
                                          int arity,
                                          StaticContext env)
                                   throws XPathException

  Throws:
    `XPathException`

### invoke

    public ValueRepresentation invoke(ValueRepresentation[] args,
                                      XPathContext context)
                               throws XPathException

  Throws:
    `XPathException`

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