public abstract class Arr extends ParseExpr
| Modifier | Constructor and Description |
|---|---|
protected |
Arr(InputInfo ii,
Expr... e)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
allAreValues()
Returns true if all arguments are values.
|
Expr |
comp(QueryContext ctx)
Compiles and optimizes the expression, assigns data types and
cardinalities.
|
int |
count(Var v)
Counts how often the specified variable is used by an expression.
|
Expr |
indexEquivalent(IndexContext ic)
Returns an equivalent expression which accesses an index structure.
|
void |
plan(Serializer ser)
Serializes the expression tree.
|
boolean |
removable(Var v)
Checks if the specified variable is replaceable by a context item.
|
Expr |
remove(Var v)
|
protected java.lang.String |
toString(java.lang.String sep)
Prints the array with the specified separator.
|
boolean |
uses(Expr.Use u)
Indicates if an expression uses the specified type or operation.
|
checkBln, checkColl, checkCreate, checkCtx, checkDbl, checkDBNode, checkEStr, checkEStr, checkIO, checkItem, checkItr, checkItr, checkMap, checkNode, checkNoEmpty, checkStr, checkType, checkUp, checkUp, checkWrite, compBln, ebv, item, iter, optPre, preEval, size, test, type, valueaddText, compEbv, hasFreeVars, indexAccessible, isEmpty, isFunction, isItem, isVacuous, isValue, iterable, markTailCalls, sameAsdescription, info, toStringpublic Expr[] expr
public Expr comp(QueryContext ctx) throws QueryException
Exprcomp in class Exprctx - query contextQueryException - query exceptionpublic boolean uses(Expr.Use u)
ExprExpr.comp(org.basex.query.QueryContext) methods to test the properties of sub-expressions.
It will return true as soon as at least one test is successful.public int count(Var v)
ExprGFLWOR.comp(org.basex.query.QueryContext) to rewrite where clauses as predicates and
remove statically bound or unused clausesGFLWOR.compHoist(org.basex.query.QueryContext) to hoist independent variablespublic boolean removable(Var v)
ExprPreds.removable(org.basex.query.util.Var), if one of the variables is used within
a predicate.MixedPath.removable(org.basex.query.util.Var), if the variable occurs within
the path.Group.removable(org.basex.query.util.Var), as the group by expression depends on
variable references.GFLWOR.comp(org.basex.query.QueryContext) to rewrite where clauses
into predicates.public Expr remove(Var v)
ExprVarRef expressions for the given variable
by a Context reference. This method is called by
GFLWOR.comp(org.basex.query.QueryContext) to rewrite where clauses as predicates.public Expr indexEquivalent(IndexContext ic) throws QueryException
ExprExpr.indexAccessible(org.basex.query.util.IndexContext) is returns true for an
expression.indexEquivalent in class Expric - index contextQueryException - query exceptionprotected final boolean allAreValues()
public void plan(Serializer ser) throws java.io.IOException
ExprInfoprotected java.lang.String toString(java.lang.String sep)
sep - separator