Package net.sf.saxon.functions

## Class DynamicContextAccessor

- java.lang.Object
- - net.sf.saxon.functions.AbstractFunction
  - - net.sf.saxon.functions.SystemFunction
    - - net.sf.saxon.functions.DynamicContextAccessor

- All Implemented Interfaces:
    `Callable`, `Function`, `GroundedValue`, `Item`, `Sequence`
  Direct Known Subclasses:
    `DynamicContextAccessor.CurrentDate`, `DynamicContextAccessor.CurrentDateTime`, `DynamicContextAccessor.CurrentTime`, `DynamicContextAccessor.DefaultLanguage`, `DynamicContextAccessor.ImplicitTimezone`

      public abstract class DynamicContextAccessor
      extends SystemFunction

  A DynamicContextAccessor is a function that takes no arguments, but operates implicitly on the dynamic context. In the case of a dynamic call, the context item that is used is the one at the point where the function item is created.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `DynamicContextAccessor.CurrentDate` |
    `static class` | `DynamicContextAccessor.CurrentDateTime` |
    `static class` | `DynamicContextAccessor.CurrentTime` |
    `static class` | `DynamicContextAccessor.DefaultLanguage` |
    `static class` | `DynamicContextAccessor.ImplicitTimezone` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DynamicContextAccessor()` |

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `bindContext​(XPathContext context)` |
    `AtomicValue` | `call​(XPathContext context, Sequence[] arguments)` | Evaluate the expression
    `abstract AtomicValue` | `evaluate​(XPathContext context)` |
    `Expression` | `makeFunctionCall​(Expression[] arguments)` | Make an expression that either calls this function, or that is equivalent to a call on this function

    - ### Methods inherited from class net.sf.saxon.functions.SystemFunction

      `dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getCompilerName, getContextNode, getDescription, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getStreamerName, importAttributes, isTrustedResultType, makeCall, makeFunction, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCaller`

    - ### Methods inherited from class net.sf.saxon.functions.AbstractFunction

      `atomize, deepEquals, effectiveBooleanValue, getAnnotations, getStringValue, getStringValueCS, isArray, isMap, makeNewContext, simplify, typeCheck`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface net.sf.saxon.om.Function

      `getGenre`

    - ### Methods inherited from interface net.sf.saxon.om.GroundedValue

      `asIterable, concatenate, containsNode, materialize`

    - ### Methods inherited from interface net.sf.saxon.om.Item

      `getLength, head, isStreamed, itemAt, iterate, reduce, subsequence`

    - ### Methods inherited from interface net.sf.saxon.om.Sequence

      `makeRepeatable`

- - ### Constructor Detail

    - #### DynamicContextAccessor

          public DynamicContextAccessor()

  - ### Method Detail

    - #### bindContext

          public void bindContext​(XPathContext context)
                           throws XPathException

      Throws:
        `XPathException`

    - #### evaluate

          public abstract AtomicValue evaluate​(XPathContext context)
                                        throws XPathException

      Throws:
        `XPathException`

    - #### call

          public AtomicValue call​(XPathContext context,
                                  Sequence[] arguments)
                           throws XPathException

      Evaluate the expression
      Parameters:
        `context` - the dynamic evaluation context
        `arguments` - the values of the arguments, supplied as Sequences
      Returns:
        the result of the evaluation, in the form of a Sequence
      Throws:
        `XPathException` - if a dynamic error occurs during the evaluation of the expression

    - #### makeFunctionCall

          public Expression makeFunctionCall​(Expression[] arguments)

      Description copied from class: `SystemFunction`
      Make an expression that either calls this function, or that is equivalent to a call on this function
      Overrides:
        `makeFunctionCall` in class `SystemFunction`
      Parameters:
        `arguments` - the supplied arguments to the function call
      Returns:
        either a function call on this function, or an expression that delivers the same result