public abstract class AbstractFunction extends java.lang.Object implements Function
| Constructor and Description |
|---|
AbstractFunction() |
| Modifier and Type | Method and Description |
|---|---|
AtomicSequence |
atomize()
Atomize the item.
|
boolean |
deepEquals(Function other,
XPathContext context,
AtomicComparer comparer,
int flags)
Test whether this FunctionItem is deep-equal to another function item,
under the rules of the deep-equal function
|
boolean |
effectiveBooleanValue()
Get the effective boolean value of the function item
|
void |
export(ExpressionPresenter out)
Output information about this function item to the diagnostic explain() output
|
AnnotationList |
getAnnotations()
Get the function annotations (as defined in XQuery).
|
OperandRole[] |
getOperandRoles()
Get the roles of the arguments, for the purposes of streaming
|
UnicodeString |
getUnicodeStringValue()
Get the string value of the function
|
boolean |
isArray()
Ask whether this function is an array
|
boolean |
isMap()
Ask whether this function is a map
|
boolean |
isTrustedResultType()
Check that result type is SystemFunction or AtomicConstructorFunction
|
XPathContext |
makeNewContext(XPathContext callingContext,
ContextOriginator originator)
Prepare an XPathContext object for evaluating the function
|
void |
simplify() |
java.lang.String |
toShortString()
Provide a short string showing the contents of the item, suitable
for use in error messages
|
void |
typeCheck(ExpressionVisitor visitor,
ContextItemStaticInfo contextItemType)
Type check the function (may modify it by adding code for converting the arguments)
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetArity, getDescription, getFunctionItemType, getFunctionName, getGenre, isSequenceVariadicgetLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequenceasIterable, concatenate, containsNode, materializemakeRepeatablepublic OperandRole[] getOperandRoles()
getOperandRoles in interface Functionpublic AtomicSequence atomize() throws XPathException
atomize in interface ItemXPathException - if atomization is not allowed for this kind of itempublic boolean isArray()
public boolean isMap()
public UnicodeString getUnicodeStringValue()
getUnicodeStringValue in interface GroundedValuegetUnicodeStringValue in interface Itemjava.lang.UnsupportedOperationException - (the string value of a function is not defined)public AnnotationList getAnnotations()
FunctiongetAnnotations in interface Functionpublic boolean effectiveBooleanValue()
throws XPathException
effectiveBooleanValue in interface GroundedValueXPathException - (the EBVof a function item is not defined)public void simplify()
throws XPathException
XPathExceptionpublic void typeCheck(ExpressionVisitor visitor, ContextItemStaticInfo contextItemType) throws XPathException
visitor - the expression visitor, supplies context informationcontextItemType - the context item type at the point where the function definition appearsXPathException - if any failure (e.g. a type checking failure) occurspublic XPathContext makeNewContext(XPathContext callingContext, ContextOriginator originator)
makeNewContext in interface FunctioncallingContext - the XPathContext of the function calling expressionoriginator - the originator of the new contextpublic boolean deepEquals(Function other, XPathContext context, AtomicComparer comparer, int flags) throws XPathException
deepEquals in interface Functionother - the other function itemcontext - the dynamic evaluation contextcomparer - the object to perform the comparisonflags - options for how the comparison is performedXPathException - if the comparison cannot be performedpublic void export(ExpressionPresenter out) throws XPathException
export in interface Functionout - the destination for the informationXPathException - if things go wrongpublic boolean isTrustedResultType()
isTrustedResultType in interface Functionpublic java.lang.String toShortString()
FunctiontoShortString in interface FunctiontoShortString in interface GroundedValuetoShortString in interface ItemCopyright (c) 2004-2022 Saxonica Limited. All rights reserved.