java.io.Serializable
, javax.xml.transform.SourceLocator
, Container
, Expression
, XSLTFunction
, InstructionInfoProvider
public class KeyFn extends SystemFunction implements XSLTFunction
locationId, staticProperties
EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD
argument
operation
Constructor | Description |
---|---|
KeyFn() |
Modifier and Type | Method | Description |
---|---|---|
void |
checkArguments(StaticContext env) |
Method called during static type checking
|
int |
computeSpecialProperties() |
Get the static properties of this expression (other than its type).
|
static KeyFn |
internalKeyCall(NamePool pool,
int fingerprint,
java.lang.String name,
Expression value,
Expression doc) |
Non-standard constructor to create an internal call on key() with a known key fingerprint
|
SequenceIterator |
iterate(XPathContext context) |
Enumerate the results of the expression
|
Expression |
preEvaluate(StaticContext env) |
preEvaluate: this method suppresses compile-time evaluation by doing nothing
|
Expression |
simplify(StaticContext env) |
Simplify: add a third implicit argument, the context document
|
Expression |
typeCheck(StaticContext env,
ItemType contextItemType) |
Type-check the expression.
|
adoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getInstructionInfo, getIntrinsicDependencies, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, markTailFunctionCalls, process, resetStaticProperties, setLocationId, setParentExpression, setParentExpression, suppressValidation, typeError
checkArgumentCount, getArguments, getDisplayName, getFunctionNameCode, getNumberOfArguments, iterateSubExpressions, optimize, promote, replaceSubExpression, setArguments, setFunctionNameCode, simplifyArguments
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addContextDocumentArgument, computeCardinality, display, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, main, makeSystemFunction, setDetails, useContextItemAsDefault
public Expression typeCheck(StaticContext env, ItemType contextItemType) throws XPathException
typeCheck
in interface Expression
typeCheck
in class FunctionCall
env
- the static context of the expressioncontextItemType
- the static type of "." at the point where this expression is invoked.
The parameter is set to null if it is known statically that the context item will be undefined.
If the type of the context item is not known statically, the argument is set to
Type.ITEM_TYPE
StaticError
- if an error is discovered during this phase
(typically a type error)XPathException
public static KeyFn internalKeyCall(NamePool pool, int fingerprint, java.lang.String name, Expression value, Expression doc)
public Expression simplify(StaticContext env) throws XPathException
simplify
in interface Expression
simplify
in class FunctionCall
env
- the static contextXPathException
- if an error is discovered during expression
rewritingpublic void checkArguments(StaticContext env) throws XPathException
SystemFunction
checkArguments
in class SystemFunction
XPathException
public int computeSpecialProperties()
computeSpecialProperties
in class SystemFunction
public Expression preEvaluate(StaticContext env)
preEvaluate
in class FunctionCall
public SequenceIterator iterate(XPathContext context) throws XPathException
iterate
in interface Expression
iterate
in class ComputedExpression
context
- supplies the context for evaluationXPathException
- if any dynamic error occurs evaluating the
expression