## com.saxonica.stream
Class StreamingApplyTemplates

    java.lang.Object
      net.sf.saxon.expr.Expression
          net.sf.saxon.expr.instruct.Instruction
              net.sf.saxon.expr.instruct.ApplyTemplates
                  com.saxonica.stream.StreamingApplyTemplates

All Implemented Interfaces:
  Serializable, SourceLocator, LocationProvider, SaxonLocator, EvaluableItem, ITemplateCall, TailCallReturner, SequenceIterable, InstructionInfo, Locator

    public class StreamingApplyTemplates

extends ApplyTemplates

Streaming version of the xsl:apply-templates instruction. Available in Saxon-EE only. Only used for select="doc(..)" or select="document(...)" or select="doc(..)//x" etc. It is not used for other apply-templates instructions occurring in a streaming template.

See Also:
  Serialized Form

Field Summary

Fields inherited from class net.sf.saxon.expr.instruct.ApplyTemplates
`actualParams, implicitSelect, mode, select, tunnelParams, useCurrentMode, useTailRecursion`

Fields inherited from class net.sf.saxon.expr.Expression
`EVALUATE_METHOD, EVENT_FEED_METHOD, ITEM_FEED_METHOD, ITERATE_METHOD, locationId, PROCESS_METHOD, PUSH_SELECTION, staticProperties, WATCH_METHOD`

Constructor Summary
`StreamingApplyTemplates(ApplyTemplates apply, Expression documentExp, Pattern selectPattern)`

Method Summary
`protected TailCall` `apply(XPathContext context, boolean returnTailCall)`
`protected void` `explainStreaming(ExpressionPresenter out)`
`protected void` `promoteInst(PromotionOffer offer)` Handle promotion offers, that is, non-local tree rewrites.

Methods inherited from class net.sf.saxon.expr.instruct.ApplyTemplates

`addToPathMap, applyTemplates, copy, createsNewNodes, defaultAction, explain, getActualParams, getImplementationMethod, getInstructionNameCode, getIntrinsicDependencies, getMode, getSelectExpression, getTunnelParams, hasLoopingSubexpression, init, isImplicitSelect, iterateSubExpressions, optimize, process, processLeavingTail, replaceSubExpression, setActualParameters, simplify, typeCheck, usesCurrentMode, useTailRecursion`

Methods inherited from class net.sf.saxon.expr.instruct.Instruction
`assembleParams, assembleTunnelParams, computeCardinality, computeSpecialProperties, dynamicError, evaluateAsString, evaluateItem, getConstructType, getExpressionName, getInstructionName, getItemType, getIteratorFromProcessMethod, getSourceLocator, isXSLT, iterate, promote`

Methods inherited from class net.sf.saxon.expr.Expression

`adoptChildExpression, checkForUpdatingSubexpressions, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluatePendingUpdates, explain, getCardinality, getColumnNumber, getColumnNumber, getContainer, getDependencies, getEvaluationMethod, getExecutable, getHostLanguage, getLineNumber, getLineNumber, getLocationId, getLocationProvider, getObjectName, getProperties, getProperty, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, getSystemId, implementsStaticTypeCheck, isSubtreeExpression, isUpdatingExpression, isVacuousExpression, iterateEvents, iterateSameFocusSubExpressions, markTailFunctionCalls, resetLocalStaticProperties, setContainer, setEvaluationMethod, setFiltered, setFlattened, setLocationId, staticTypeCheck, suppressValidation, toString, typeError`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface javax.xml.transform.SourceLocator
`getColumnNumber, getLineNumber, getPublicId, getSystemId`

Constructor Detail

### StreamingApplyTemplates

    public StreamingApplyTemplates(ApplyTemplates apply,
                                   Expression documentExp,
                                   Pattern selectPattern)
                            throws XPathException

Throws:
  `XPathException`

Method Detail

### promoteInst

    protected void promoteInst(PromotionOffer offer)
                        throws XPathException

  Description copied from class: `ApplyTemplates`
  Handle promotion offers, that is, non-local tree rewrites.

  Overrides:
    `promoteInst` in class `ApplyTemplates`
  Parameters:
    `offer` - The type of rewrite being offered
  Throws:
    `XPathException`

### apply

    protected TailCall apply(XPathContext context,
                             boolean returnTailCall)
                      throws XPathException

  Overrides:
    `apply` in class `ApplyTemplates`
  Throws:
    `XPathException`

### explainStreaming

    protected void explainStreaming(ExpressionPresenter out)

  Overrides:
    `explainStreaming` in class `ApplyTemplates`

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