public abstract class AbstractFunction extends AbstractItem 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 | 
| OperandRole[] | getOperandRoles()Get the roles of the arguments, for the purposes of streaming | 
| String | getStringValue()Get the string value of the function | 
| CharSequence | getStringValueCS()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 | 
| void | optimize(ExpressionVisitor visitor,
        ContextItemStaticInfo contextItemType)Optimize the function (may modify it) | 
| void | simplify() | 
| void | typeCheck(ExpressionVisitor visitor,
         ContextItemStaticInfo contextItemType)Type check the function (may modify it by adding code for converting the arguments) | 
getLength, head, itemAt, iterate, reduce, subsequenceclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcall, getArity, getDescription, getFunctionItemType, getFunctionName, iterategetLength, head, itemAt, reduce, subsequencepublic 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 String getStringValue()
getStringValue in interface GroundedValuegetStringValue in interface ItemUnsupportedOperationException - (the string value of a function is not defined)Item.getStringValueCS()public CharSequence getStringValueCS()
getStringValueCS in interface GroundedValuegetStringValueCS in interface ItemUnsupportedOperationException - (the string value of a function is not defined)Item.getStringValue()public 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 void optimize(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 occurspublic 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)
Copyright (c) 2004-2014 Saxonica Limited. All rights reserved.