net.sf.saxon.instruct
Class AnalyzeString

java.lang.Object
  |
  +--net.sf.saxon.instruct.Instruction
        |
        +--net.sf.saxon.instruct.AnalyzeString
All Implemented Interfaces:
java.io.Serializable, javax.xml.transform.SourceLocator

public class AnalyzeString
extends Instruction

An xsl:analyze-string elements in the stylesheet. New at XSLT 2.0

See Also:
Serialized Form

Field Summary
 
Fields inherited from class net.sf.saxon.instruct.Instruction
children
 
Constructor Summary
AnalyzeString(Expression select, Expression regex, Expression flags, Block matching, Block nonMatching, java.util.regex.Pattern pattern)
          Construct an AnalyzeString instruction
 
Method Summary
 TailCall processLeavingTail(XPathContext context)
          ProcessLeavingTail: called to do the real work of this instruction.
 void setInstructionDetails(Controller controller, NamePool namePool, InstructionDetails details)
          Get the name of this instruction for diagnostic and tracing purposes.
 
Methods inherited from class net.sf.saxon.instruct.Instruction
assembleParams, assembleTunnelParams, getChildren, getColumnNumber, getInstructionDetails, getInstructionName, getLineNumber, getPublicId, getResultType, getSystemId, getSystemId, process, processChildren, processChildrenLeavingTail, recoverableError, setChildren, setSourceLocation, styleError, styleError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnalyzeString

public AnalyzeString(Expression select,
                     Expression regex,
                     Expression flags,
                     Block matching,
                     Block nonMatching,
                     java.util.regex.Pattern pattern)
Construct an AnalyzeString instruction

Parameters:
select - the expression containing the input string
regex - the regular expression
flags - the flags parameter
matching - actions to be applied to a matching substring
nonMatching - actions to be applied to a non-matching substring
pattern - the compiled regular expression, if it was known statically
Method Detail

setInstructionDetails

public void setInstructionDetails(Controller controller,
                                  NamePool namePool,
                                  InstructionDetails details)
Get the name of this instruction for diagnostic and tracing purposes. (the string "xsl:analyze-string")

Specified by:
setInstructionDetails in class Instruction

processLeavingTail

public TailCall processLeavingTail(XPathContext context)
                            throws javax.xml.transform.TransformerException
Description copied from class: Instruction
ProcessLeavingTail: called to do the real work of this instruction. This method must be implemented in each subclass. The results of the instruction are written to the current Receiver, which can be obtained via the Controller.

Specified by:
processLeavingTail in class Instruction
Parameters:
context - The dynamic context of the transformation, giving access to the current node, the current variables, etc.
Returns:
null if the instruction has completed execution; or a TailCall indicating a function call or template call that is delegated to the caller, to be made after the stack has been unwound so as to save stack space.
javax.xml.transform.TransformerException