org.basex.query.expr
Class CmpG

java.lang.Object
  extended by org.basex.query.ExprInfo
      extended by org.basex.query.expr.Expr
          extended by org.basex.query.expr.Arr
              extended by org.basex.query.expr.CmpG

public final class CmpG
extends Arr

General comparison.

Author:
Workgroup DBIS, University of Konstanz 2005-10, ISC License, Christian Gruen

Nested Class Summary
static class CmpG.Comp
          Comparators.
 
Nested classes/interfaces inherited from class org.basex.query.expr.Expr
Expr.Use
 
Field Summary
 CmpG.Comp cmp
          Comparator.
 
Fields inherited from class org.basex.query.expr.Arr
expr
 
Constructor Summary
CmpG(Expr e1, Expr e2, CmpG.Comp c)
          Constructor.
 
Method Summary
 Bln atomic(QueryContext ctx)
          Evaluates the expression and returns the resulting item or a null reference.
 String color()
          Returns a color string for the expression.
 Expr comp(QueryContext ctx)
          Optimizes and compiles the expression.
 boolean indexAccessible(IndexContext ic)
          Checks if an index can be used for query evaluation.
 Expr indexEquivalent(IndexContext ic)
          Returns an equivalent expression which accesses an index structure.
static Step indexStep(Expr expr)
          Returns the indexable index step or null.
 String info()
          Returns a string description of the expression.
 void plan(Serializer ser)
          Recursively sends the abstract syntax of this expression to the specified serializer.
 Return returned(QueryContext ctx)
          Indicates the return type of an expression.
 String toString()
           
 
Methods inherited from class org.basex.query.expr.Arr
duplicates, removable, remove, uses
 
Methods inherited from class org.basex.query.expr.Expr
addText, checkCtx, checkDbl, checkItr, e, ebv, i, iter, sameAs, size, test, v
 
Methods inherited from class org.basex.query.ExprInfo
name
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

cmp

public CmpG.Comp cmp
Comparator.

Constructor Detail

CmpG

public CmpG(Expr e1,
            Expr e2,
            CmpG.Comp c)
Constructor.

Parameters:
e1 - first expression
e2 - second expression
c - comparator
Method Detail

comp

public Expr comp(QueryContext ctx)
          throws QueryException
Description copied from class: Expr
Optimizes and compiles the expression.

Overrides:
comp in class Arr
Parameters:
ctx - query context
Returns:
optimized Expression
Throws:
QueryException - query exception

atomic

public Bln atomic(QueryContext ctx)
           throws QueryException
Description copied from class: Expr
Evaluates the expression and returns the resulting item or a null reference. If this method is not overwritten, Expr.iter(org.basex.query.QueryContext) must be implemented.

Overrides:
atomic in class Expr
Parameters:
ctx - query context
Returns:
iterator
Throws:
QueryException - query exception

indexAccessible

public boolean indexAccessible(IndexContext ic)
                        throws QueryException
Description copied from class: Expr
Checks if an index can be used for query evaluation.

Overrides:
indexAccessible in class Expr
Parameters:
ic - index context
Returns:
true if an index can be used
Throws:
QueryException - query exception

indexEquivalent

public Expr indexEquivalent(IndexContext ic)
Description copied from class: Expr
Returns an equivalent expression which accesses an index structure. Must be called if Expr.indexAccessible(org.basex.query.IndexContext) is implemented for an expression.

Overrides:
indexEquivalent in class Arr
Parameters:
ic - index context
Returns:
Equivalent index-expression or null

indexStep

public static Step indexStep(Expr expr)
Returns the indexable index step or null.

Parameters:
expr - expression arguments
Returns:
result of check

returned

public Return returned(QueryContext ctx)
Description copied from class: Expr
Indicates the return type of an expression. Called by the compiler to check if expressions can be reformulated. null is returned by default.

Overrides:
returned in class Expr
Parameters:
ctx - query context
Returns:
result of check

info

public String info()
Description copied from class: ExprInfo
Returns a string description of the expression. Contrary to the ExprInfo.toString() method, arguments are not included in the output.

Overrides:
info in class ExprInfo
Returns:
result of check

color

public String color()
Description copied from class: ExprInfo
Returns a color string for the expression.

Overrides:
color in class ExprInfo
Returns:
color

plan

public void plan(Serializer ser)
          throws IOException
Description copied from class: ExprInfo
Recursively sends the abstract syntax of this expression to the specified serializer.

Overrides:
plan in class Arr
Parameters:
ser - serializer
Throws:
IOException - I/O exception

toString

public String toString()
Specified by:
toString in class ExprInfo