net.sf.farrago.ojrex
Class FarragoOJRexCaseImplementor
java.lang.Object
net.sf.farrago.ojrex.FarragoOJRexImplementor
net.sf.farrago.ojrex.FarragoOJRexCaseImplementor
- All Implemented Interfaces:
- OJRexImplementor
public class FarragoOJRexCaseImplementor
- extends FarragoOJRexImplementor
FarragoOJRexCaseImplementor implements Farrago specifics of OJRexImplementor
for CASE
expressions.
- Version:
- $Id: //open/dev/farrago/src/net/sf/farrago/ojrex/FarragoOJRexCaseImplementor.java#10 $
- Author:
- Xiaoyang Luo
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FarragoOJRexCaseImplementor
public FarragoOJRexCaseImplementor()
implementFarrago
public Expression implementFarrago(FarragoRexToOJTranslator translator,
RexCall call,
Expression[] operands)
- Description copied from class:
FarragoOJRexImplementor
- Refined version of
OJRexImplementor.implement(org.eigenbase.oj.rex.RexToOJTranslator, org.eigenbase.rex.RexCall, openjava.ptree.Expression[])
.
- Specified by:
implementFarrago
in class FarragoOJRexImplementor
- Parameters:
translator
- provides Farrago-specific translation contextcall
- the call to be translatedoperands
- call's operands, which have already been translated
independently
canImplement
public boolean canImplement(RexCall call)
- Description copied from interface:
OJRexImplementor
- Tests whether it is possible to implement a call.
- Specified by:
canImplement
in interface OJRexImplementor
- Overrides:
canImplement
in class FarragoOJRexImplementor
- Parameters:
call
- the call for which translation is being considered
- Returns:
- whether the call can be implemented