|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.saxon.expr.EarlyEvaluationContext
public class EarlyEvaluationContext
This class is an implementation of XPathContext used when evaluating constant sub-expressions at compile time.
Constructor Summary | |
---|---|
EarlyEvaluationContext(Configuration config,
CollationMap map)
Create an early evaluation context, used for evaluating constant expressions at compile time |
Method Summary | |
---|---|
void |
changeOutputDestination(Properties props,
Result result,
boolean isFinal,
int hostLanguage,
int validation,
SchemaType schemaType)
Set a new output destination, supplying the output format details. |
ValueRepresentation |
evaluateLocalVariable(int slotnumber)
Get the value of a local variable, identified by its slot number |
XPathContext |
getCaller()
Get the calling XPathContext (the next one down the stack). |
StringCollator |
getCollation(String name)
Get a named collation |
Configuration |
getConfiguration()
Get the Configuration |
Item |
getContextItem()
Get the context item |
int |
getContextPosition()
Get the context position (the position of the context item) |
Controller |
getController()
Get the Controller. |
DateTimeValue |
getCurrentDateTime()
Get the current date and time. |
GroupIterator |
getCurrentGroupIterator()
Get the current group iterator. |
SequenceIterator |
getCurrentIterator()
Get the current iterator. |
Mode |
getCurrentMode()
Get the current mode. |
RegexIterator |
getCurrentRegexIterator()
Get the current regex iterator. |
Rule |
getCurrentTemplateRule()
Get the current template. |
StringCollator |
getDefaultCollation()
Get the default collation |
int |
getImplicitTimezone()
Get the implicit timezone, as a positive or negative offset from UTC in minutes. |
int |
getLast()
Get the context size (the position of the last item in the current node list) |
ParameterSet |
getLocalParameters()
Get the local (non-tunnel) parameters that were passed to the current function or template |
NamePool |
getNamePool()
Get the Name Pool |
InstructionInfoProvider |
getOrigin()
Get information about the creating expression or other construct. |
int |
getOriginatingConstructType()
Get the type of location from which this context was created. |
SequenceReceiver |
getReceiver()
Get the Receiver to which output is currently being written. |
StackFrame |
getStackFrame()
Get a reference to the local stack frame for variables. |
ParameterSet |
getTunnelParameters()
Get the tunnel parameters that were passed to the current function or template. |
boolean |
isAtLast()
Determine whether the context position is the same as the context size that is, whether position()=last() |
XPathContextMajor |
newCleanContext()
Construct a new context without copying (used for the context in a function call) |
XPathContextMajor |
newContext()
Construct a new context as a copy of another. |
XPathContextMinor |
newMinorContext()
Construct a new minor context. |
void |
setCaller(XPathContext caller)
Set the calling XPathContext |
void |
setCurrentIterator(SequenceIterator iter)
Set a new sequence iterator. |
void |
setLocalVariable(int slotnumber,
ValueRepresentation value)
Set the value of a local variable, identified by its slot number |
void |
setOrigin(InstructionInfoProvider expr)
Set the creating expression (for use in diagnostics). |
void |
setOriginatingConstructType(int loc)
Set the type of creating expression (for use in diagnostics). |
void |
setReceiver(SequenceReceiver receiver)
Change the Receiver to which output is written |
void |
setTemporaryReceiver(SequenceReceiver out)
Set the receiver to which output is to be written, marking it as a temporary (non-final) output destination. |
boolean |
useLocalParameter(StructuredQName qName,
LocalParam binding,
boolean isTunnel)
Use local parameter. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public EarlyEvaluationContext(Configuration config, CollationMap map)
config
- the Saxon configurationmap
- the available collationsMethod Detail |
---|
public void changeOutputDestination(Properties props, Result result, boolean isFinal, int hostLanguage, int validation, SchemaType schemaType) throws XPathException
changeOutputDestination
in interface XPathContext
props
- properties defining the output formatresult
- Details of the new output destinationisFinal
- true if the destination is a final result tree
(either the principal output or a secondary result tree); false if
it is a temporary tree, xsl:attribute, etc.hostLanguage
- the host language (XSLT, XQuery, XPath)validation
- validation mode: strict, lax, preserve, or stripschemaType
- type against which the output must be validated
XPathException
- if any dynamic error occurs; and
specifically, if an attempt is made to switch to a final output
destination while writing a temporary tree or sequencepublic ValueRepresentation evaluateLocalVariable(int slotnumber)
evaluateLocalVariable
in interface XPathContext
slotnumber
- the slot number allocated at compile time to the variable,
which identifies its position within the local stack frame
public XPathContext getCaller()
getCaller
in interface XPathContext
public StringCollator getCollation(String name) throws XPathException
getCollation
in interface XPathContext
name
- the name (URI) of the required collation
XPathException
- if the collation is not recognizedpublic Configuration getConfiguration()
getConfiguration
in interface XPathContext
public Item getContextItem()
getContextItem
in interface XPathContext
public int getContextPosition() throws XPathException
getContextPosition
in interface XPathContext
XPathException
- if the context position is undefinedpublic Controller getController()
getController
in interface XPathContext
public GroupIterator getCurrentGroupIterator()
getCurrentGroupIterator
in interface XPathContext
public SequenceIterator getCurrentIterator()
getCurrentIterator
in interface XPathContext
public Mode getCurrentMode()
getCurrentMode
in interface XPathContext
public RegexIterator getCurrentRegexIterator()
getCurrentRegexIterator
in interface XPathContext
public Rule getCurrentTemplateRule()
getCurrentTemplateRule
in interface XPathContext
public StringCollator getDefaultCollation()
getDefaultCollation
in interface XPathContext
public int getLast() throws XPathException
getLast
in interface XPathContext
XPathException
- if the context position is undefinedpublic ParameterSet getLocalParameters()
getLocalParameters
in interface XPathContext
public NamePool getNamePool()
getNamePool
in interface XPathContext
public InstructionInfoProvider getOrigin()
getOrigin
in interface XPathContext
public int getOriginatingConstructType()
getOriginatingConstructType
in interface XPathContext
public SequenceReceiver getReceiver()
getReceiver
in interface XPathContext
public StackFrame getStackFrame()
getStackFrame
in interface XPathContext
public ParameterSet getTunnelParameters()
getTunnelParameters
in interface XPathContext
public boolean isAtLast() throws XPathException
isAtLast
in interface XPathContext
XPathException
public XPathContextMajor newCleanContext()
newCleanContext
in interface XPathContext
public XPathContextMajor newContext()
newContext
in interface XPathContext
public XPathContextMinor newMinorContext()
newMinorContext
in interface XPathContext
public void setCaller(XPathContext caller)
setCaller
in interface XPathContext
caller
- the XPathContext of the calling expressionpublic void setCurrentIterator(SequenceIterator iter)
setCurrentIterator
in interface XPathContext
iter
- the current iterator. The context item, position, and size are determined by reference
to the current iterator.public void setLocalVariable(int slotnumber, ValueRepresentation value)
setLocalVariable
in interface XPathContext
slotnumber
- the slot number allocated at compile time to the variable,
which identifies its position within the local stack framevalue
- the value of the variablepublic void setOrigin(InstructionInfoProvider expr)
InstructionInfoProvider
, allowing information
about the calling instruction to be obtained.
setOrigin
in interface XPathContext
expr
- the expression that created this context objectpublic void setOriginatingConstructType(int loc)
setOrigin(net.sf.saxon.trace.InstructionInfoProvider)
should be called.
setOriginatingConstructType
in interface XPathContext
loc
- The originating location: the argument must be one of the integer constants in class
Location
public void setReceiver(SequenceReceiver receiver)
setReceiver
in interface XPathContext
receiver
- the SequenceReceiver to be usedpublic void setTemporaryReceiver(SequenceReceiver out)
setTemporaryReceiver
in interface XPathContext
out
- The SequenceOutputter to be usedpublic boolean useLocalParameter(StructuredQName qName, LocalParam binding, boolean isTunnel) throws XPathException
useLocalParameter
in interface XPathContext
qName
- The fingerprint of the parameter namebinding
- The XSLParam element to bind its value toisTunnel
- True if a tunnel parameter is required, else false
XPathException
public DateTimeValue getCurrentDateTime() throws NoDynamicContextException
getCurrentDateTime
in interface XPathContext
NoDynamicContextException
public int getImplicitTimezone() throws NoDynamicContextException
getImplicitTimezone
in interface XPathContext
NoDynamicContextException
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |