|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectnet.sf.saxon.expr.Optimizer
This class doesn't actually do any optimization itself, despite the name. Rather, it is intended to act as a factory for implementation classes that perform optimization, so that the appropriate level of optimization can be selected.
| Field Summary | |
protected Configuration |
config
|
| Constructor Summary | |
Optimizer(Configuration config)
|
|
| Method Summary | |
Expression |
convertPathExpressionToKey(PathExpression pathExp,
StaticContext env)
Examine a path expression to see whether it can be replaced by a call on the key() function; if so, generate an appropriate key definition and return the call on key(). |
FilterExpression |
convertToFilterExpression(PathExpression pathExp,
TypeHierarchy th)
Convert a path expression such as a/b/c[predicate] into a filter expression of the form (a/b/c)[predicate]. |
Configuration |
getConfiguration()
|
int |
isIndexableFilter(Expression filter)
Test whether a filter predicate is indexable. |
Closure |
makeClosure(Expression expression,
int ref)
Make a Closure, given the expected reference count |
BinaryExpression |
makeGeneralComparison(Expression p0,
int op,
Expression p1,
boolean backwardsCompatible)
Create a GeneralComparison expression |
Expression |
optimizeCopy(Expression select)
Attempt to optimize a copy operation. |
SequenceIterator |
tryIndexedFilter(ValueRepresentation startValue,
Expression filter,
int isIndexable,
XPathContext context)
|
ComputedExpression |
tryToConvertFilterExpressionToKey(FilterExpression f,
StaticContext env)
Try converting a filter expression to a call on the key function. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
protected Configuration config
| Constructor Detail |
public Optimizer(Configuration config)
| Method Detail |
public Configuration getConfiguration()
public BinaryExpression makeGeneralComparison(Expression p0,
int op,
Expression p1,
boolean backwardsCompatible)
public Expression optimizeCopy(Expression select)
throws XPathException
select - the expression that selects the items to be copied
XPathException
public Closure makeClosure(Expression expression,
int ref)
public Expression convertPathExpressionToKey(PathExpression pathExp,
StaticContext env)
throws XPathException
pathExp - The path expression to be converted.
XPathException
public ComputedExpression tryToConvertFilterExpressionToKey(FilterExpression f,
StaticContext env)
throws XPathException
XPathException
public FilterExpression convertToFilterExpression(PathExpression pathExp,
TypeHierarchy th)
throws StaticError
pathExp - the path expression to be converted
StaticError
public SequenceIterator tryIndexedFilter(ValueRepresentation startValue,
Expression filter,
int isIndexable,
XPathContext context)
throws XPathException
XPathExceptionpublic int isIndexableFilter(Expression filter)
filter - the predicate expression
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||