|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.saxon.expr.instruct.Procedure net.sf.saxon.expr.instruct.Template
public class Template
The runtime object corresponding to an xsl:template element in the stylesheet. Note that the Template object no longer has precedence information associated with it; this is now only in the Rule object that references this Template. This allows two rules to share the same template, with different precedences. This occurs when a stylesheet module is imported more than once, from different places, with different import precedences.
Field Summary |
---|
Fields inherited from class net.sf.saxon.expr.instruct.Procedure |
---|
body |
Constructor Summary | |
---|---|
Template()
Create a template |
Method Summary | |
---|---|
void |
apply(XPathContextMajor context)
Process the template, without returning any tail calls. |
TailCall |
applyLeavingTail(XPathContextMajor context)
Process this template, with the possibility of returning a tail call package if the template contains any tail calls that are to be performed by the caller. |
TailCall |
expand(XPathContext context)
Expand the template. |
void |
explain(ExpressionPresenter presenter)
Output diagnostic explanation to an ExpressionPresenter |
int |
getConstructType()
Get the type of construct. |
LocalParam |
getLocalParam(int id)
Get the local parameter with a given parameter id |
Pattern |
getMatchPattern()
Get the match pattern used with this template |
StructuredQName |
getObjectName()
Get a name identifying the object of the expression, for example a function name, template name, variable name, key name, element name, etc. |
SequenceType |
getRequiredType()
Get the required type to be returned by this template |
StructuredQName |
getTemplateName()
Get the name of the template (if it is named) |
boolean |
hasRequiredParams()
Ask whether this template has one or more required parameters |
boolean |
isStreamable()
Ask whether or not this template is declared as streamable |
void |
setBody(Expression body)
Set the expression that forms the body of the template |
void |
setHasRequiredParams(boolean has)
Set whether this template has one or more required parameters |
void |
setMatchPattern(Pattern pattern)
Set the match pattern used with this template |
void |
setRequiredType(SequenceType type)
Set the required type to be returned by this template |
void |
setStreamable(boolean streamable)
Say whether or not this template is declared as streamable |
void |
setTemplateName(StructuredQName templateName)
Initialize the template |
Methods inherited from class net.sf.saxon.expr.instruct.Procedure |
---|
getBody, getColumnNumber, getColumnNumber, getContainerGranularity, getExecutable, getHostLanguage, getLineNumber, getLineNumber, getLocationProvider, getProperties, getProperty, getPublicId, getStackFrameMap, getSystemId, getSystemId, setExecutable, setHostLanguage, setLineNumber, setStackFrameMap, setSystemId |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public Template()
Method Detail |
---|
public void setTemplateName(StructuredQName templateName)
templateName
- the name of the template (if any)
performed by apply-importspublic void setMatchPattern(Pattern pattern)
pattern
- the match pattern (may be null for a named template)public Pattern getMatchPattern()
public void setBody(Expression body)
setBody
in class Procedure
body
- the body of the templatepublic StructuredQName getTemplateName()
public StructuredQName getObjectName()
getObjectName
in interface InstructionInfo
public void setHasRequiredParams(boolean has)
has
- true if the template has at least one required parameterpublic boolean hasRequiredParams()
public void setRequiredType(SequenceType type)
type
- the required type as defined in the "as" attribute on the xsl:template elementpublic SequenceType getRequiredType()
public void setStreamable(boolean streamable)
streamable
- true if the template belongs to a streamable modepublic boolean isStreamable()
public LocalParam getLocalParam(int id)
id
- the parameter id
public void apply(XPathContextMajor context) throws XPathException
context
- The dynamic context, giving access to the current node,
XPathException
public TailCall applyLeavingTail(XPathContextMajor context) throws XPathException
context
- the XPath dynamic context
XPathException
public TailCall expand(XPathContext context) throws XPathException
context
- the XPath dynamic context
XPathException
public int getConstructType()
StandardNames
: all less than 1024)
or it will be a constant in class Location
.
getConstructType
in interface InstructionInfo
public void explain(ExpressionPresenter presenter)
explain
in interface RuleTarget
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |