public class Concat extends SystemFunction implements PushableFunction
Constructor and Description |
---|
Concat() |
Modifier and Type | Method and Description |
---|---|
StringValue |
call(XPathContext context,
Sequence[] arguments)
Call the Callable.
|
java.lang.String |
getCompilerName()
Get the (local) name of a class that can be used to generate bytecode for this
system function
|
FunctionItemType |
getFunctionItemType()
Get the item type of the function item
|
SequenceType |
getRequiredType(int arg)
Get the required type of the nth argument
|
Expression |
makeOptimizedFunctionCall(ExpressionVisitor visitor,
ContextItemStaticInfo contextInfo,
Expression... arguments)
Allow the function to create an optimized call based on the values of the actual arguments
|
void |
process(Outputter destination,
XPathContext context,
Sequence[] arguments)
Evaluate the function in "push" mode
|
protected Sequence |
resultIfEmpty(int arg)
Ask if the function always returns a known result when one of the arguments is an empty sequence
|
dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getContextNode, getDescription, getDetails, getErrorCodeForTypeErrors, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getResultItemType, getResultItemType, getRetainedStaticContext, getSpecialProperties, getStaticBaseUriString, getStreamerName, getUniStringArg, hashCode, importAttributes, isSequenceVariadic, isTrustedResultType, makeCall, makeFunction, makeFunctionCall, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, toShortString, toString, typeCheckCaller
atomize, deepEquals, effectiveBooleanValue, getAnnotations, getUnicodeStringValue, isArray, isMap, makeNewContext, simplify, typeCheck
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getLength, getStringValue, head, isStreamed, itemAt, iterate, reduce, subsequence
asIterable, concatenate, containsNode, materialize
makeRepeatable
protected Sequence resultIfEmpty(int arg)
SystemFunction
resultIfEmpty
in class SystemFunction
arg
- the argument whose value is an empty sequence (counting from zero)public FunctionItemType getFunctionItemType()
getFunctionItemType
in interface Function
getFunctionItemType
in class SystemFunction
public Expression makeOptimizedFunctionCall(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo, Expression... arguments) throws XPathException
makeOptimizedFunctionCall
in class SystemFunction
visitor
- the expression visitorcontextInfo
- information about the context itemarguments
- the supplied arguments to the function call. Note: modifying the contents
of this array should not be attempted, it is likely to have no effect.XPathException
- if an error is detectedpublic StringValue call(XPathContext context, Sequence[] arguments) throws XPathException
Callable
call
in interface Callable
context
- the dynamic evaluation contextarguments
- the values of the arguments, supplied as Sequences.
Generally it is advisable, if calling iterate() to process a supplied sequence, to
call it only once; if the value is required more than once, it should first be converted
to a GroundedValue
by calling the utility method
SequenceTool.toGroundedValue().
If the expected value is a single item, the item should be obtained by calling
Sequence.head(): it cannot be assumed that the item will be passed as an instance of
Item
or AtomicValue
.
It is the caller's responsibility to perform any type conversions required to convert arguments to the type expected by the callee. An exception is where this Callable is explicitly an argument-converting wrapper around the original Callable.
XPathException
- if a dynamic error occurs during the evaluation of the expressionpublic void process(Outputter destination, XPathContext context, Sequence[] arguments) throws XPathException
PushableFunction
process
in interface PushableFunction
destination
- the destination for the function resultcontext
- the dynamic evaluation contextarguments
- the supplied arguments to the functionXPathException
- if a dynamic error occurs during the evaluationpublic SequenceType getRequiredType(int arg)
getRequiredType
in class SystemFunction
arg
- the number of the argument whose type is requested, zero-basedpublic java.lang.String getCompilerName()
SystemFunction
getCompilerName
in class SystemFunction
Copyright (c) 2004-2022 Saxonica Limited. All rights reserved.