org.basex.query.ft
Class FTContainsExpr

java.lang.Object
  extended by org.basex.data.ExprInfo
      extended by org.basex.query.expr.Expr
          extended by org.basex.query.expr.ParseExpr
              extended by org.basex.query.ft.FTContains
                  extended by org.basex.query.ft.FTContainsExpr

public final class FTContainsExpr
extends FTContains

FTContains expression.

Author:
BaseX Team 2005-12, BSD License, Christian Gruen

Nested Class Summary
 
Nested classes/interfaces inherited from class org.basex.query.expr.Expr
Expr.Flag
 
Field Summary
 
Fields inherited from class org.basex.query.expr.ParseExpr
info, size, type
 
Constructor Summary
FTContainsExpr(Expr e, FTExpr fte, InputInfo ii)
          Constructor.
 
Method Summary
 Expr copy(QueryContext ctx, VarScope scp, IntObjMap<Var> vs)
          Copies an expression.
 boolean indexAccessible(IndexCosts ic)
          Checks if an expression can be rewritten to an index access.
 Expr indexEquivalent(IndexCosts ic)
          Returns an equivalent expression which accesses an index structure.
 Bln item(QueryContext ctx, InputInfo ii)
          Evaluates the expression and returns the resulting item or a null reference, if the expression yields an empty sequence.
 
Methods inherited from class org.basex.query.ft.FTContains
accept, checkUp, compile, 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 org.basex.data.ExprInfo
addPlan, addPlan, description, info, planAttr, planElem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FTContainsExpr

public FTContainsExpr(Expr e,
                      FTExpr fte,
                      InputInfo ii)
Constructor.

Parameters:
e - expression
fte - full-text expression
ii - input info
Method Detail

item

public Bln 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 context
ii - input info
Returns:
iterator
Throws:
QueryException - query exception

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 Expr
Parameters:
ic - index costs analyzer
Returns:
equivalent index-expression
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 context
scp - variable scope for creating new variables
vs - mapping from old variable IDs to new variable copies
Returns:
copied expression