public class CurrentMergeGroup extends SystemFunction
Constructor and Description |
---|
CurrentMergeGroup() |
Modifier and Type | Method and Description |
---|---|
Sequence |
call(XPathContext context,
Sequence[] arguments)
Evaluate the expression
|
MergeInstr |
getControllingInstruction()
Get the innermost containing xsl:merge instruction, if there is one
|
ItemType |
getResultItemType()
Determine the item type of the value returned by the function
|
int |
getSpecialProperties(Expression[] arguments)
Determine the special properties of this expression.
|
java.lang.String |
getStreamerName()
Get a name that identifies the class that can be used to evaluate this function
in streaming mode, that is, supplying one item or event at a time as it is
delivered by the parser.
|
boolean |
isInLoop()
Determine whether the current-group() function is executed repeatedly within a single iteration
of the containing xsl:for-each-group
|
Expression |
makeFunctionCall(Expression... arguments)
Make an expression that either calls this function, or that is equivalent to a call
on this function
|
void |
setControllingInstruction(MergeInstr instruction,
boolean isInLoop)
Set the containing xsl:merge instruction, if there is one
|
dependsOnContextItem, dynamicCall, equals, export, exportAdditionalArguments, exportAttributes, fixArguments, getArity, getCardinality, getCompilerName, getContextNode, getDescription, getDetails, getErrorCodeForTypeErrors, getFunctionItemType, getFunctionName, getIntegerBounds, getNetCost, getOperandRoles, getRequiredType, getResultItemType, getRetainedStaticContext, getStaticBaseUriString, importAttributes, isTrustedResultType, makeCall, makeFunction, makeOptimizedFunctionCall, resultIfEmpty, setArity, setDetails, setRetainedStaticContext, supplyTypeInformation, typeCheckCaller
atomize, deepEquals, effectiveBooleanValue, getAnnotations, getStringValue, getStringValueCS, isArray, isMap, makeNewContext, simplify, typeCheck
getLength, head, isStreamed, itemAt, iterate, reduce, subsequence
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getLength, head, itemAt, reduce, subsequence
public void setControllingInstruction(MergeInstr instruction, boolean isInLoop) throws XPathException
instruction
- the (innermost) containing xsl:merge instructionisInLoop
- true if the current-merge-group() expression is evaluated more than once during
evaluation of the body of the for-each-group instructionXPathException
- for example if the argument to the function is statically known and is
not a valid source namepublic MergeInstr getControllingInstruction()
public boolean isInLoop()
public ItemType getResultItemType()
getResultItemType
in class SystemFunction
public int getSpecialProperties(Expression[] arguments)
getSpecialProperties
in class SystemFunction
arguments
- the actual arguments supplied to the function callStaticProperty.NON_CREATIVE
(unless the variable is assignable using saxon:assign)public Expression makeFunctionCall(Expression... arguments)
makeFunctionCall
in class SystemFunction
arguments
- the supplied arguments to the function callpublic Sequence call(XPathContext context, Sequence[] arguments) throws XPathException
context
- the dynamic evaluation contextarguments
- the values of the arguments, supplied as SequenceIteratorsXPathException
- if a dynamic error occurs during the evaluation of the expressionpublic java.lang.String getStreamerName()
SystemFunction
getStreamerName
in class SystemFunction
StreamerMap
. In non-streaming Saxon editions
(HE and PE) the method always returns null.Copyright (c) 2004-2018 Saxonica Limited. All rights reserved.