net.sf.saxon.style
public class XSLFunction extends StyleElement implements StylesheetProcedure
Field Summary | |
---|---|
List | references |
Method Summary | |
---|---|
Expression | compile(Executable exec)
Compile the function definition to create an executable representation |
void | fixupReferences()
Notify all references to this function of the data type. |
UserFunction | getCompiledFunction()
Get the compiled function |
int | getConstructType()
Get the type of construct. |
int | getNumberOfArguments()
Get the number of arguments declared by this function (that is, its arity). |
StructuredQName | getObjectName()
Get a name identifying the object of the expression, for example a function name, template name,
variable name, key name, element name, etc. |
SequenceType | getResultType()
Get the type of value returned by this function |
SlotManager | getSlotManager()
Get associated Procedure (for details of stack frame). |
boolean | isOverriding()
Is override="yes"? |
protected boolean | isPermittedChild(StyleElement child)
Specify that xsl:param is a permitted child |
protected boolean | mayContainParam(String attName) |
boolean | mayContainSequenceConstructor()
Determine whether this type of element is allowed to contain a template-body. |
void | optimize() |
void | prepareAttributes() |
void | registerReference(UserFunctionCall ref)
Method called by UserFunctionCall to register the function call for
subsequent fixup. |
void | setParameterDefinitions(UserFunction fn)
Set the definitions of the parameters in the compiled function, as an array. |
void | validate() |
Returns: an Instruction, or null. The instruction returned is actually rather irrelevant; the compile() method has the side-effect of binding all references to the function to the executable representation (a UserFunction object)
Throws: XPathException
Throws: XPathException
Returns: the object representing the compiled user-written function
Returns: the arity of the function
Returns: the declared result type, or the inferred result type if this is more precise
Returns: the associated Procedure object
Returns: true if override="yes" was specified, otherwise false
Returns: true: yes, it may contain a general template-body
Parameters: ref the UserFunctionCall to be registered
Parameters: fn the compiled object representing the user-written function