## org.exist.xquery
Class FunctionSignature

    java.lang.Object
      org.exist.xquery.FunctionSignature

public class FunctionSignature
extends java.lang.Object

Describes the signature of a built-in or user-defined function, i.e. its name, the type and cardinality of its arguments and its return type.

Author:
  wolf

Field Summary
`static SequenceType` `DEFAULT_TYPE` Default sequence type for function parameters.
`static SequenceType[]` `NO_ARGS` Empty array to specify if a function doesn't take any arguments.

Constructor Summary
`FunctionSignature(QName name)`
`FunctionSignature(QName name, SequenceType[] arguments, SequenceType returnType)`
`FunctionSignature(QName name, SequenceType[] arguments, SequenceType returnType, boolean overloaded)`
`FunctionSignature(QName name, java.lang.String description, SequenceType[] arguments, SequenceType returnType)`
`FunctionSignature(QName name, java.lang.String description, SequenceType[] arguments, SequenceType returnType, boolean overloaded)` Create a new function signature.
`FunctionSignature(QName name, java.lang.String description, SequenceType[] arguments, SequenceType returnType, boolean overloaded, java.lang.String deprecated)`
`FunctionSignature(QName name, java.lang.String description, SequenceType[] arguments, SequenceType returnType, java.lang.String deprecated)`

Method Summary
`boolean` `equals(java.lang.Object obj)`
`int` `getArgumentCount()`
`SequenceType[]` `getArgumentTypes()`
`java.lang.String` `getDeprecated()`
`java.lang.String` `getDescription()`
`FunctionId` `getFunctionId()`
`QName` `getName()`
`SequenceType` `getReturnType()`
`boolean` `isDeprecated()`
`boolean` `isOverloaded()`
`void` `setArgumentTypes(SequenceType[] types)`
`void` `setDeprecated(java.lang.String message)`
`void` `setReturnType(SequenceType type)`
`static SequenceType[]` `singleArgument(SequenceType arg)`
`java.lang.String` `toString()`

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

Field Detail

### DEFAULT_TYPE

    public static final SequenceType DEFAULT_TYPE

  Default sequence type for function parameters.

### NO_ARGS

    public static final SequenceType[] NO_ARGS

  Empty array to specify if a function doesn't take any arguments.

Constructor Detail

### FunctionSignature

    public FunctionSignature(QName name)

### FunctionSignature

    public FunctionSignature(QName name,
                             SequenceType[] arguments,
                             SequenceType returnType)

### FunctionSignature

    public FunctionSignature(QName name,
                             SequenceType[] arguments,
                             SequenceType returnType,
                             boolean overloaded)

### FunctionSignature

    public FunctionSignature(QName name,
                             java.lang.String description,
                             SequenceType[] arguments,
                             SequenceType returnType)

### FunctionSignature

    public FunctionSignature(QName name,
                             java.lang.String description,
                             SequenceType[] arguments,
                             SequenceType returnType,
                             java.lang.String deprecated)

### FunctionSignature

    public FunctionSignature(QName name,
                             java.lang.String description,
                             SequenceType[] arguments,
                             SequenceType returnType,
                             boolean overloaded,
                             java.lang.String deprecated)

### FunctionSignature

    public FunctionSignature(QName name,
                             java.lang.String description,
                             SequenceType[] arguments,
                             SequenceType returnType,
                             boolean overloaded)

  Create a new function signature.

Parameters:
  `name` - the QName of the function.
  `arguments` - the sequence types of all expected arguments
  `returnType` - the sequence type returned by the function
  `overloaded` - set to true if the function may expect additional parameters

Method Detail

### singleArgument

    public static final SequenceType[] singleArgument(SequenceType arg)

### getName

    public QName getName()

### getArgumentCount

    public int getArgumentCount()

### getFunctionId

    public FunctionId getFunctionId()

### getReturnType

    public SequenceType getReturnType()

### setReturnType

    public void setReturnType(SequenceType type)

### getArgumentTypes

    public SequenceType[] getArgumentTypes()

### setArgumentTypes

    public void setArgumentTypes(SequenceType[] types)

### getDescription

    public java.lang.String getDescription()

### isOverloaded

    public boolean isOverloaded()

### isDeprecated

    public boolean isDeprecated()

### getDeprecated

    public java.lang.String getDeprecated()

### setDeprecated

    public void setDeprecated(java.lang.String message)

### toString

    public java.lang.String toString()

### equals

    public boolean equals(java.lang.Object obj)

Copyright (C) Wolfgang Meier. All rights reserved.