public final class UntypedSequenceConverter extends AtomicSequenceConverter
| Modifier and Type | Class and Description |
|---|---|
static class |
UntypedSequenceConverter.UntypedConverter
A Converter that converts untyped atomic values to the required type, while
leaving other values unchanged
|
AtomicSequenceConverter.AtomicSequenceMappingFunction, AtomicSequenceConverter.ToStringMappingFunctionconverter, TO_STRING_MAPPEREFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, UPDATE_METHOD, WATCH_METHOD| Constructor and Description |
|---|
UntypedSequenceConverter(Expression sequence,
PlainType requiredItemType)
Constructor
|
| Modifier and Type | Method and Description |
|---|---|
int |
computeCardinality()
Determine the static cardinality of the expression
|
int |
computeSpecialProperties()
Determine the special properties of this expression
|
Expression |
copy()
Copy an expression.
|
protected String |
displayOperator(Configuration config)
Give a string representation of the operator for use in diagnostics
|
boolean |
equals(Object other)
Is this expression the same as another expression?
|
void |
export(ExpressionPresenter destination)
Diagnostic print of expression structure.
|
String |
getExpressionName()
Get a name identifying the kind of expression, in terms meaningful to a user.
|
ItemType |
getItemType()
Determine the data type of the items returned by the expression, if possible
|
int |
hashCode()
get HashCode for comparing two expressions.
|
static UntypedSequenceConverter |
makeUntypedSequenceConverter(Configuration config,
Expression operand,
PlainType requiredItemType)
Create an AtomicSequenceConverter that converts all untypedAtomic values in the input sequence to
a specified target type, while leaving items other than untypedAtomic unchanged
|
static UntypedSequenceConverter |
makeUntypedSequenceRejector(Configuration config,
Expression operand,
PlainType requiredItemType) |
String |
toShortString()
Produce a short string identifying the expression for use in error messages
|
Expression |
typeCheck(ExpressionVisitor visitor,
ContextItemStaticInfo contextInfo)
Type-check the expression
|
allocateConverter, allocateConverter, evaluateItem, getConverter, getExpressionCompiler, getImplementationMethod, getOperandRole, getRequiredItemType, getStreamingAdjunct, iterate, optimize, setConverter, simplifygetBaseExpression, getOperand, operands, setBaseExpression, toStringaddToPathMap, adoptChildExpression, checkedOperands, checkForUpdatingSubexpressions, checkPermittedContents, clearStreamabilityData, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluatePendingUpdates, explain, getCardinality, getConfiguration, getConstructType, getCost, getDependencies, getEvaluationMethod, getHostLanguage, getIntegerBounds, getIntrinsicDependencies, getLocation, getNetCost, getObjectName, getPackageData, getParentExpression, getPosture, getPostureAndSweepIfKnown, getProperties, getProperty, getRetainedStaticContext, getSlotsUsed, getSpecialProperties, getStaticBaseURI, getStaticBaseURIString, getStreamability, getSweep, getSystemId, hasVariableBinding, identityHashCode, implementsStaticTypeCheck, isCallOn, isCallOnSystemFunction, isIdentical, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, makeStreamingAdjunct, markTailFunctionCalls, operandList, operandSparseList, optimizeChildren, optimizeForType, process, promote, promoteChildren, resetLocalStaticProperties, restoreParentPointers, setEvaluationMethod, setFiltered, setFlattened, setLocation, setParentExpression, setPostureAndSweep, setRetainedStaticContext, setRetainedStaticContextLocally, setStaticProperty, simplifyChildren, staticTypeCheck, suppressValidation, toPattern, toStreamingPattern, typeCheckChildren, typeError, unorderedpublic UntypedSequenceConverter(Expression sequence, PlainType requiredItemType)
sequence - this must be a sequence of atomic values. This is not checked; a ClassCastException
will occur if the precondition is not satisfied.requiredItemType - the item type to which all items in the sequence should be converted,
using the rules for "cast as".public static UntypedSequenceConverter makeUntypedSequenceConverter(Configuration config, Expression operand, PlainType requiredItemType) throws XPathException
config - the Saxon configurationoperand - the expression that delivers the input sequencerequiredItemType - the type to which untypedAtomic values should be cast, which must either be an
atomic type or a "plain" union typeXPathException - if an error occurs, for example if the target type is namespace-sensitivepublic static UntypedSequenceConverter makeUntypedSequenceRejector(Configuration config, Expression operand, PlainType requiredItemType)
public Expression typeCheck(ExpressionVisitor visitor, ContextItemStaticInfo contextInfo) throws XPathException
AtomicSequenceConvertertypeCheck in class AtomicSequenceConvertervisitor - an expression visitorcontextInfo - Information available statically about the context item: whether it is (possibly)
absent; its static type; its streaming posture.XPathException - if an error is discovered during this phase
(typically a type error)public int computeSpecialProperties()
computeSpecialProperties in class AtomicSequenceConverterStaticProperty.NON_CREATIVE.public Expression copy()
copy in class AtomicSequenceConverterpublic ItemType getItemType()
getItemType in class AtomicSequenceConverterpublic int computeCardinality()
computeCardinality in class AtomicSequenceConverterStaticProperty.ALLOWS_ZERO_OR_ONE,
StaticProperty.EXACTLY_ONE, StaticProperty.ALLOWS_ONE_OR_MORE,
StaticProperty.ALLOWS_ZERO_OR_MOREpublic boolean equals(Object other)
equals in class AtomicSequenceConverterpublic int hashCode()
hashCode in class AtomicSequenceConverterprotected String displayOperator(Configuration config)
UnaryExpressiondisplayOperator in class AtomicSequenceConverterconfig - the Saxon configurationpublic String getExpressionName()
getExpressionName in class AtomicSequenceConverterpublic String toShortString()
ExpressiontoShortString in class UnaryExpressionpublic void export(ExpressionPresenter destination)
export in class AtomicSequenceConverterdestination - the expression presenter used to display the structureCopyright (c) 2004-2014 Saxonica Limited. All rights reserved.