## org.exist.xquery
Interface InternalModule

All Superinterfaces:
  Module

All Known Implementing Classes:
  AbstractInternalModule

public interface InternalModule
extends Module

Defines an internal module implemented in Java. The class maintains a collection of Java classes each being a subclass of `Function`. For internal modules, a new function object is created from its class for each function reference in the XQuery script.

Author:
  Wolfgang Meier (wolfgang@exist-db.org)

Field Summary

Fields inherited from interface org.exist.xquery.Module
`REQUEST_FUNCTION_NS, RESPONSE_FUNCTION_NS, SESSION_FUNCTION_NS, SYSTEM_FUNCTION_NS, TEXT_FUNCTION_NS, TRANSFORM_FUNCTION_NS, UTIL_FUNCTION_NS, XMLDB_FUNCTION_NS`

Method Summary
`FunctionDef` `getFunctionDef(QName qname, int argCount)` Returns the implementing class for the function identified by qname or null if it is not defined.
`java.util.List` `getFunctionsByName(QName qname)` Returns all functions defined in this module matching the specified qname.

Methods inherited from interface org.exist.xquery.Module
`declareVariable, declareVariable, getDefaultPrefix, getDescription, getNamespaceURI, getSignaturesForFunction, isInternalModule, isVarDeclared, listFunctions, reset, resolveVariable`

Method Detail

### getFunctionDef

    public FunctionDef getFunctionDef(QName qname,
                                      int argCount)

  Returns the implementing class for the function identified by qname or null if it is not defined. Called by `FunctionFactory`.

  Parameters:
    `qname` -
  Returns:
    implementing class for the function

### getFunctionsByName

    public java.util.List getFunctionsByName(QName qname)

  Returns all functions defined in this module matching the specified qname.

  Parameters:
    `qname` -
  Returns:
    all functions defined in this module

Copyright (C) Wolfgang Meier. All rights reserved.