Interface XQueryFunctionBinder

All Superinterfaces:
FunctionLibrary
All Known Implementing Classes:
FunctionLibraryList, ImportedFunctionLibrary, XQueryFunctionLibrary

public interface XQueryFunctionBinder extends FunctionLibrary
XQueryFunctionBinder is an extension of the FunctionLibrary interface used for function libraries that contain user-written XQuery functions. It provides a method that allows the XQueryFunction with a given name and arity to be located.
  • Method Details

    • getDeclaration

      XQueryFunction getDeclaration(StructuredQName functionName, int staticArgs)
      Get the function declaration corresponding to a given function name and arity
      Parameters:
      functionName - the name of the function as a QName
      staticArgs - the number of expressions supplied as arguments in the function call
      Returns:
      the XQueryFunction if there is one, or null if not.
    • bindUnboundFunctionCall

      boolean bindUnboundFunctionCall(UserFunctionCall call, List<String> reasons)
      Bind a function call using this XQuery function library, in the situation where it was not possible to bind it earlier, typically because it was encountered as a forwards reference.
      Parameters:
      call - The unbound function call, which will include a non-null UnboundFunctionCallDetails
      reasons - a list which can be populated with messages indicating why binding failed
      Returns:
      true if the function call is now bound; false if it remains unbound.