public abstract class StandardFunction
extends java.lang.Object
| Modifier and Type | Class | Description |
|---|---|---|
static class |
StandardFunction.Entry |
An entry in the table describing the properties of a function
|
| Modifier and Type | Field | Description |
|---|---|---|
protected static ItemType |
SAME_AS_FIRST_ARGUMENT |
| Modifier and Type | Method | Description |
|---|---|---|
static void |
arg(StandardFunction.Entry e,
int a,
ItemType type,
int cardinality,
Value resultIfEmpty) |
Add information to a function entry about the argument types of the function
|
static StandardFunction.Entry |
getFunction(java.lang.String name,
int arity) |
Get the table entry for the function with a given name
|
static StandardFunction.Entry |
makeEntry(java.lang.String name,
java.lang.Class implementationClass,
int opcode,
int minArguments,
int maxArguments,
ItemType itemType,
int cardinality) |
Make a table entry describing the signature of a function, with a reference to the implementation class.
|
protected static ItemType SAME_AS_FIRST_ARGUMENT
public static StandardFunction.Entry makeEntry(java.lang.String name, java.lang.Class implementationClass, int opcode, int minArguments, int maxArguments, ItemType itemType, int cardinality)
name - the function nameimplementationClass - the class used to implement the functionopcode - identifies the function when a single class implements several functionsminArguments - the minimum number of arguments requiredmaxArguments - the maximum number of arguments alloweditemType - the item type of the result of the functioncardinality - the cardinality of the result of the functionpublic static void arg(StandardFunction.Entry e, int a, ItemType type, int cardinality, Value resultIfEmpty)
e - the entry for the functiona - the position of the argument, counting from zerotype - the item type of the argumentcardinality - the cardinality of the argumentresultIfEmpty - the value returned by the function if an empty sequence appears as the value,
when this result is unaffected by any other argumentspublic static StandardFunction.Entry getFunction(java.lang.String name, int arity)
name - the name of the function. This may be an unprefixed local-name for functions in the
system namespace, or may use the conventional prefix "saxon:" in the case of Saxon extension functions
that are specially recognized