com.saxonica.functions.hof
Class MapFn

java.lang.Object
  extended by net.sf.saxon.expr.Expression
      extended by net.sf.saxon.expr.FunctionCall
          extended by net.sf.saxon.functions.SystemFunction
              extended by com.saxonica.functions.hof.MapFn
All Implemented Interfaces:
Serializable, SourceLocator, LocationProvider, SaxonLocator, CallableExpression, InstructionInfo, Locator

public class MapFn
extends SystemFunction
implements CallableExpression

This class implements the function fn:map(), which is a standard function in XQuery 1.1

See Also:
Serialized Form

Field Summary
 
Fields inherited from class net.sf.saxon.functions.SystemFunction
operation
 
Fields inherited from class net.sf.saxon.expr.FunctionCall
argument
 
Fields inherited from class net.sf.saxon.expr.Expression
EFFECTIVE_BOOLEAN_VALUE, EVALUATE_METHOD, EVENT_FEED_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, MAX_SEQUENCE_LENGTH, MAX_STRING_LENGTH, PROCESS_METHOD, PUSH_SELECTION, staticProperties, UNBOUNDED_LOWER, UNBOUNDED_UPPER, WATCH_METHOD
 
Constructor Summary
MapFn()
           
 
Method Summary
 SequenceIterator<? extends Item> call(SequenceIterator<? extends Item>[] arguments, XPathContext context)
          Evaluate the expression
 ItemType getItemType(TypeHierarchy th)
          Determine the item type of the value returned by the function
 SequenceIterator<Item> iterate(XPathContext context)
          Return an Iterator to iterate over the values of a sequence.
 
Methods inherited from class net.sf.saxon.functions.SystemFunction
addContextDocumentArgument, addDocToPathMap, checkArguments, computeCardinality, computeSpecialProperties, copy, equals, getDetails, getErrorCodeForTypeErrors, getImplementationMethod, getOperation, getRequiredType, makeSystemFunction, optimize, setDetails, useContextItemAsDefault
 
Methods inherited from class net.sf.saxon.expr.FunctionCall
addExternalFunctionCallToPathMap, checkArgumentCount, explain, getArguments, getDisplayName, getExpressionName, getFunctionName, getNumberOfArguments, hashCode, iterateSubExpressions, preEvaluate, promote, replaceSubExpression, setArguments, setFunctionName, simplify, simplifyArguments, toString, typeCheck
 
Methods inherited from class net.sf.saxon.expr.Expression
addToPathMap, adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, evaluateItem, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getColumnNumber, getConstructType, getContainer, getDependencies, getEvaluationMethod, getExecutable, getHostLanguage, getIntegerBounds, getIntrinsicDependencies, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, hasLoopingSubexpression, hasVariableBinding, implementsStaticTypeCheck, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, iterateSameFocusSubExpressions, markTailFunctionCalls, process, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, typeError
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface net.sf.saxon.expr.CallableExpression
getArguments
 

Constructor Detail

MapFn

public MapFn()
Method Detail

getItemType

public ItemType getItemType(TypeHierarchy th)
Description copied from class: SystemFunction
Determine the item type of the value returned by the function

Overrides:
getItemType in class SystemFunction
Parameters:
th - the type hierarchy cache
Returns:
a value such as Type.STRING, Type.BOOLEAN, Type.NUMBER, Type.NODE, or Type.ITEM (meaning not known at compile time)

iterate

public SequenceIterator<Item> iterate(XPathContext context)
                               throws XPathException
Description copied from class: Expression
Return an Iterator to iterate over the values of a sequence. The value of every expression can be regarded as a sequence, so this method is supported for all expressions. This default implementation handles iteration for expressions that return singleton values: for non-singleton expressions, the subclass must provide its own implementation.

Overrides:
iterate in class Expression
Parameters:
context - supplies the context for evaluation
Returns:
a SequenceIterator that can be used to iterate over the result of the expression
Throws:
XPathException - if any dynamic error occurs evaluating the expression

call

public SequenceIterator<? extends Item> call(SequenceIterator<? extends Item>[] arguments,
                                             XPathContext context)
                                      throws XPathException
Description copied from interface: CallableExpression
Evaluate the expression

Specified by:
call in interface CallableExpression
Parameters:
arguments - the values of the arguments, supplied as SequenceIterators
context - the dynamic evaluation context
Returns:
the result of the evaluation, in the form of a SequenceIterator
Throws:
XPathException - if a dynamic error occurs during the evaluation of the expression


Copyright (c) 2004-2011 Saxonica Limited. All rights reserved.