public abstract class AbstractFunctionItem extends AbstractItem implements FunctionItem
Constructor and Description |
---|
AbstractFunctionItem() |
Modifier and Type | Method and Description |
---|---|
boolean |
deepEquals(FunctionItem 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 this sequence
|
void |
explain(ExpressionPresenter out) |
String |
getStringValue()
Get the string value of the function item
|
CharSequence |
getStringValueCS()
Get the string value of the function item
|
SequenceIterator |
getTypedValue()
Get the typed value of the item.
|
void |
optimize(ExpressionVisitor visitor,
ExpressionVisitor.ContextItemType contextItemType)
Optimize the function (may modify it)
|
void |
simplify(ExpressionVisitor visitor) |
void |
typeCheck(ExpressionVisitor visitor,
ExpressionVisitor.ContextItemType contextItemType)
Type check the function (may modify it by adding code for converting the arguments)
|
getLength, head, itemAt, iterate, reduce, subsequence
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
call, getArity, getFunctionItemType, getFunctionName
getLength, itemAt, reduce, subsequence
public String getStringValue()
getStringValue
in interface GroundedValue
getStringValue
in interface Item
UnsupportedOperationException
- (the string value of a function item is not defined)Item.getStringValueCS()
public CharSequence getStringValueCS()
getStringValueCS
in interface GroundedValue
getStringValueCS
in interface Item
UnsupportedOperationException
- (the string value of a function item is not defined)Item.getStringValue()
public boolean effectiveBooleanValue() throws XPathException
GroundedValue
effectiveBooleanValue
in interface GroundedValue
XPathException
- if the sequence has no effective boolean value (for example a sequence of two integers)public SequenceIterator getTypedValue() throws XPathException
XPathException
- (always) - a function item cannot be atomizedpublic void simplify(ExpressionVisitor visitor) throws XPathException
XPathException
public void typeCheck(ExpressionVisitor visitor, ExpressionVisitor.ContextItemType contextItemType) throws XPathException
visitor
- the expression visitor, supplies context informationcontextItemType
- the context item type at the point where the function definition appearsXPathException
public void optimize(ExpressionVisitor visitor, ExpressionVisitor.ContextItemType contextItemType) throws XPathException
visitor
- the expression visitor, supplies context informationcontextItemType
- the context item type at the point where the function definition appearsXPathException
public void explain(ExpressionPresenter out)
public boolean deepEquals(FunctionItem other, XPathContext context, AtomicComparer comparer, int flags) throws XPathException
deepEquals
in interface FunctionItem
other
- 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 performedCopyright (c) 2004-2013 Saxonica Limited. All rights reserved.