org.basex.query.expr
Class Or
java.lang.Object
org.basex.data.ExprInfo
org.basex.query.expr.Expr
org.basex.query.expr.ParseExpr
org.basex.query.expr.Arr
org.basex.query.expr.Logical
org.basex.query.expr.Or
public final class Or
- extends Logical
Or expression.
- Author:
- BaseX Team 2005-12, BSD License, Christian Gruen
Nested classes/interfaces inherited from class org.basex.query.expr.Expr |
Expr.Flag |
Fields inherited from class org.basex.query.expr.Arr |
expr |
Methods inherited from class org.basex.query.expr.Arr |
accept, allAreValues, checkNoUp, checkUp, copyAll, count, exprSize, has, inline, plan, removable, toString |
Methods inherited from class org.basex.query.expr.ParseExpr |
checkAdmin, checkAllUp, checkBinary, checkBln, checkColl, checkCreate, checkCtx, checkDbl, checkDBNode, checkEStr, checkEStr, checkFunc, checkItem, checkItr, checkItr, checkMap, checkNode, checkNode, checkNode, checkNoEmpty, checkNoneUp, checkNoUp, checkQNm, checkStr, checkStr, checkStrBin, checkType, checkWrite, compBln, copyType, ebv, iter, optPre, preEval, size, test, type, value |
Methods inherited from class org.basex.query.expr.Expr |
addText, compEbv, copy, hasFreeVars, inlineAll, isEmpty, isFunction, isItem, isVacuous, isValue, iterable, markTailCalls, optimize, sameAs, uses, visitAll |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Or
public Or(InputInfo ii,
Expr... e)
- Constructor.
- Parameters:
ii
- input infoe
- expression list
compile
public Expr compile(QueryContext ctx,
VarScope scp)
throws QueryException
- Description copied from class:
Expr
- Compiles and optimizes the expression, assigns data types and cardinalities.
- Overrides:
compile
in class Logical
- Parameters:
ctx
- query contextscp
- variable scope
- Returns:
- optimized expression
- Throws:
QueryException
- query exception
item
public Item item(QueryContext ctx,
InputInfo ii)
throws QueryException
- Description copied from class:
Expr
- Evaluates the expression and returns the resulting item or
a
null
reference, if the expression yields an empty sequence.
If this method is not overwritten, Expr.iter(org.basex.query.QueryContext)
must be implemented
by an expression, as it may be called by this method.
- Overrides:
item
in class ParseExpr
- Parameters:
ctx
- query contextii
- input info
- Returns:
- iterator
- Throws:
QueryException
- query exception
copy
public Expr copy(QueryContext ctx,
VarScope scp,
IntObjMap<Var> vs)
- Description copied from class:
Expr
- Copies an expression.
Will be useful for inlining functions, or for copying static queries.
- Specified by:
copy
in class Expr
- Parameters:
ctx
- query contextscp
- variable scope for creating new variablesvs
- mapping from old variable IDs to new variable copies
- Returns:
- copied expression
indexAccessible
public boolean indexAccessible(IndexCosts ic)
throws QueryException
- Description copied from class:
Expr
- Checks if an expression can be rewritten to an index access. If this method is
implemented,
Expr.indexEquivalent(org.basex.query.util.IndexCosts)
must be implemented as well.
- Overrides:
indexAccessible
in class Expr
- Parameters:
ic
- index costs analyzer
- Returns:
- true if an index can be used
- Throws:
QueryException
- query exception
indexEquivalent
public Expr indexEquivalent(IndexCosts ic)
throws QueryException
- Description copied from class:
Expr
- Returns an equivalent expression which accesses an index structure. Will be called
if
Expr.indexAccessible(org.basex.query.util.IndexCosts)
is returns true for an expression.
- Overrides:
indexEquivalent
in class Arr
- Parameters:
ic
- index costs analyzer
- Returns:
- equivalent index-expression
- Throws:
QueryException
- query exception
toString
public java.lang.String toString()
- Specified by:
toString
in class ExprInfo