Class MapFunctionSet.MapGet

All Implemented Interfaces:
Callable, Function, GroundedValue, Item, Sequence
Enclosing class:
MapFunctionSet

public static class MapFunctionSet.MapGet extends SystemFunction
Implementation of the XPath 3.1 function map:get(Map, key) => value
  • Field Details

    • pendingWarning

      String pendingWarning
  • Constructor Details

    • MapGet

      public MapGet()
  • Method Details

    • supplyTypeInformation

      public void supplyTypeInformation(ExpressionVisitor visitor, ContextItemStaticInfo contextItemType, Expression[] arguments) throws XPathException
      Method called during static type checking. This method may be implemented in subclasses so that functions can take advantage of knowledge of the types of the arguments that will be supplied.
      Overrides:
      supplyTypeInformation in class SystemFunction
      Parameters:
      visitor - an expression visitor, providing access to the static context and configuration
      contextItemType - information about whether the context item is set, and what its type is
      arguments - the expressions appearing as arguments in the function call
      Throws:
      XPathException
    • getResultItemType

      public ItemType getResultItemType(Expression[] args)
      Get the return type, given knowledge of the actual arguments
      Overrides:
      getResultItemType in class SystemFunction
      Parameters:
      args - the actual arguments supplied
      Returns:
      the best available item type that the function will return
    • getCardinality

      public int getCardinality(Expression[] args)
      Get the cardinality, given knowledge of the actual arguments
      Overrides:
      getCardinality in class SystemFunction
      Parameters:
      args - the actual arguments supplied
      Returns:
      the most precise available cardinality that the function will return
    • makeOptimizedFunctionCall

      public Expression makeOptimizedFunctionCall(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo, Expression... arguments) throws XPathException
      Allow the function to create an optimized call based on the values of the actual arguments
      Overrides:
      makeOptimizedFunctionCall in class SystemFunction
      Parameters:
      visitor - the expression visitor
      contextInfo - information about the context item
      arguments - the supplied arguments to the function call. Note: modifying the contents of this array should not be attempted, it is likely to have no effect.
      Returns:
      either a function call on this function, or an expression that delivers the same result, or null indicating that no optimization has taken place
      Throws:
      XPathException - if an error is detected
    • call

      public Sequence call(XPathContext context, Sequence[] arguments) throws XPathException
      Description copied from interface: Function
      Invoke the function
      Parameters:
      context - the XPath dynamic evaluation context
      arguments - the actual arguments to be supplied
      Returns:
      the result of invoking the function
      Throws:
      XPathException - if a dynamic error occurs within the function