net.sf.saxon.style
Class XSLForEach
java.lang.Object
net.sf.saxon.tree.NodeImpl
net.sf.saxon.tree.ParentNodeImpl
net.sf.saxon.tree.ElementImpl
net.sf.saxon.style.StyleElement
net.sf.saxon.style.XSLForEach
- All Implemented Interfaces:
- Serializable, Source, SourceLocator, LocationProvider, SaxonLocator, PullEvent, Container, FingerprintedNode, Item, MutableNodeInfo, NamespaceResolver, NodeInfo, SiblingCountingNode, ValueRepresentation, InstructionInfo, Locator
public class XSLForEach
- extends StyleElement
Handler for xsl:for-each elements in stylesheet.
- See Also:
- Serialized Form
Fields inherited from class net.sf.saxon.style.StyleElement |
defaultCollationName, defaultXPathNamespace, extensionNamespaces, REPORT_ALWAYS, REPORT_IF_INSTANTIATED, REPORT_UNLESS_FALLBACK_AVAILABLE, REPORT_UNLESS_FORWARDS_COMPATIBLE, reportingCircumstances, staticContext, validationError, version |
Methods inherited from class net.sf.saxon.style.StyleElement |
allocateLocationId, allocatePatternSlots, allocateSlots, backwardsCompatibleModeIsEnabled, bindVariable, checkEmpty, checkSortComesFirst, checkTopLevel, checkUnknownAttribute, checkWithinTemplate, compileError, compileError, compileError, compileError, compileSequenceConstructor, compileWarning, compileWarning, definesExcludedNamespace, definesExtensionElement, fallbackProcessing, fixupReferences, forwardsCompatibleModeIsEnabled, getAllStylesheetFunctions, getAttributeSets, getAttributeValue, getColumnNumber, getCommonChildItemType, getConstructType, getContainerGranularity, getContainingSlotManager, getContainingStylesheet, getDefaultCollationName, getDefaultXPathNamespace, getExecutable, getHostLanguage, getLastChildInstruction, getLineNumber, getLocationProvider, getNamespaceResolver, getObjectName, getPrecedence, getPreparedStylesheet, getPrincipalStylesheet, getProperties, getProperty, getSchemaType, getStaticContext, getStylesheetFunction, getSystemId, getTypeAnnotation, getVersion, getWithParamInstructions, index, isExcludedNamespace, isExplaining, isExtensionNamespace, issueWarning, issueWarning, isTopLevel, makeAttributeValueTemplate, makeExpression, makeExpressionVisitor, makeNamespaceContext, makePattern, makeQName, makeSequenceType, makeSortKeys, makeTraceInstruction, mayContainFallback, mayContainParam, postValidate, processAllAttributes, processAttributes, processDefaultCollationAttribute, processDefaultXPathNamespaceAttribute, processExcludedNamespaces, processExtensionElementAttribute, processStandardAttributes, processVersionAttribute, replaceSubExpression, reportAbsence, seesAvuncularVariables, setObjectName, setValidationError, substituteFor, typeCheck, typeCheck, undeclaredNamespaceError, validateChildren, validateSubtree |
Methods inherited from class net.sf.saxon.tree.ElementImpl |
addAttribute, addNamespace, copy, delete, fixupInsertedNamespaces, generateId, getAttributeList, getAttributeValue, getAttributeValue, getBaseURI, getColumnNumber, getDeclaredNamespaces, getDocumentRoot, getInScopeNamespaceCodes, getLineNumber, getNameCode, getNodeKind, getPrefixForURI, getRoot, getSystemId, getTypeAnnotation, getURICodeForPrefix, getURICodeForPrefixCode, getURIForPrefix, initialise, isId, isNilled, iteratePrefixes, removeAttribute, removeTypeAnnotation, rename, replaceStringValue, setLineAndColumn, setLocation, setNameCode, setNamespaceDeclarations, setSystemId, setTypeAnnotation |
Methods inherited from class net.sf.saxon.tree.ParentNodeImpl |
addChild, compact, enumerateChildren, getFirstChild, getLastChild, getNthChild, getNumberOfChildren, getSequenceNumber, getStringValue, getStringValueCS, hasChildNodes, insertChildren, insertChildrenAt, removeChild, replaceChildrenAt, useChildrenArray |
Methods inherited from class net.sf.saxon.tree.NodeImpl |
atomize, compareOrder, equals, getConfiguration, getDisplayName, getDocumentNumber, getFingerprint, getLocalPart, getNamePool, getNextInDocument, getNextSibling, getParent, getPhysicalRoot, getPrefix, getPreviousInDocument, getPreviousSibling, getPublicId, getSiblingPosition, getTypedValue, getURI, insertSiblings, isDeleted, isIdref, isSameNodeInfo, iterateAxis, iterateAxis, newBuilder, replace |
select
Expression select
containsTailCall
boolean containsTailCall
XSLForEach
public XSLForEach()
isInstruction
public boolean isInstruction()
- Determine whether this node is an instruction.
- Overrides:
isInstruction
in class StyleElement
- Returns:
- true - it is an instruction
isPermittedChild
protected boolean isPermittedChild(StyleElement child)
- Specify that xsl:sort is a permitted child
- Overrides:
isPermittedChild
in class StyleElement
- Parameters:
child
- the child that may or may not be permitted
- Returns:
- true if the child is permitted.
getReturnedItemType
protected ItemType getReturnedItemType()
- Determine the type of item returned by this instruction (only relevant if
it is an instruction).
- Overrides:
getReturnedItemType
in class StyleElement
- Returns:
- the item type returned
markTailCalls
protected boolean markTailCalls()
- Description copied from class:
StyleElement
- Mark tail-recursive calls on templates and functions.
For most instructions, this returns false.
- Overrides:
markTailCalls
in class StyleElement
- Returns:
- true if one or more tail calls were identified
mayContainSequenceConstructor
public boolean mayContainSequenceConstructor()
- Determine whether this type of element is allowed to contain a template-body
- Overrides:
mayContainSequenceConstructor
in class StyleElement
- Returns:
- true: yes, it may contain a template-body
prepareAttributes
public void prepareAttributes()
throws XPathException
- Description copied from class:
StyleElement
- Set the attribute list for the element. This is called to process the attributes (note
the distinction from processAttributes in the superclass).
Must be supplied in a subclass
- Specified by:
prepareAttributes
in class StyleElement
- Throws:
XPathException
validate
public void validate()
throws XPathException
- Description copied from class:
StyleElement
- Check that the stylesheet element is valid. This is called once for each element, after
the entire tree has been built. As well as validation, it can perform first-time
initialisation. The default implementation does nothing; it is normally overriden
in subclasses.
- Overrides:
validate
in class StyleElement
- Throws:
XPathException
compile
public Expression compile(Executable exec)
throws XPathException
- Description copied from class:
StyleElement
- Compile the instruction on the stylesheet tree into an executable instruction
for use at run-time.
- Specified by:
compile
in class StyleElement
- Parameters:
exec
- the Executable
- Returns:
- either a ComputedExpression, or null. The value null is returned when compiling an instruction
that returns a no-op, or when compiling a top-level object such as an xsl:template that compiles
into something other than an instruction.
- Throws:
XPathException