org.basex.query.expr
Class Case

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

public final class Case
extends Expr

Case expression.

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

Constructor Summary
Case(Var v, Expr r)
          Constructor.
 
Method Summary
 Expr comp(QueryContext ctx)
          Optimizes and compiles the expression.
 void plan(Serializer ser)
          Recursively sends the abstract syntax of this expression to the specified serializer.
 Case remove(Var v)
          Removes the specified variable in a sub expression.
 Return returned(QueryContext ctx)
          Indicates the return type of an expression.
 java.lang.String toString()
           
 boolean uses(Expr.Use use, QueryContext ctx)
          Indicates if an expression uses the specified type.
 
Methods inherited from class org.basex.query.expr.Expr
addText, atomic, checkCtx, checkDbl, checkItr, duplicates, e, ebv, i, indexAccessible, indexEquivalent, iter, removable, sameAs, size, test
 
Methods inherited from class org.basex.query.ExprInfo
color, info, name
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Case

public Case(Var v,
            Expr r)
Constructor.

Parameters:
v - variable
r - return expression
Method Detail

comp

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

Specified by:
comp in class Expr
Parameters:
ctx - query context
Returns:
optimized Expression

uses

public boolean uses(Expr.Use use,
                    QueryContext ctx)
Description copied from class: Expr
Indicates if an expression uses the specified type. Called by the compiler to perform certain optimizations. true is returned by default and thus assumed as "worst-case".

Overrides:
uses in class Expr
Parameters:
use - use type to be checked
ctx - query context
Returns:
result of check

remove

public Case remove(Var v)
Description copied from class: Expr
Removes the specified variable in a sub expression.

Overrides:
remove in class Expr
Parameters:
v - variable to be removed
Returns:
expression with removed variable

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

plan

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

Specified by:
plan in class ExprInfo
Parameters:
ser - serializer
Throws:
java.io.IOException - exception

toString

public java.lang.String toString()
Specified by:
toString in class ExprInfo