org.eigenbase.oj.rex
Class OJRexUnaryExpressionImplementor

java.lang.Object
  extended by org.eigenbase.oj.rex.OJRexUnaryExpressionImplementor
All Implemented Interfaces:
OJRexImplementor

public class OJRexUnaryExpressionImplementor
extends Object
implements OJRexImplementor

OJRexUnaryExpressionImplementor implements OJRexImplementor for row expressions which can be translated to instances of OpenJava UnaryExpression.

Version:
$Id: //open/dev/farrago/src/org/eigenbase/oj/rex/OJRexUnaryExpressionImplementor.java#9 $
Author:
Angel Chang

Field Summary
private  int ojUnaryExpressionOrdinal
           
 
Constructor Summary
OJRexUnaryExpressionImplementor(int ojUnaryExpressionOrdinal)
           
 
Method Summary
 boolean canImplement(RexCall call)
          Tests whether it is possible to implement a call.
 Expression implement(RexToOJTranslator translator, RexCall call, Expression[] operands)
          Implements a single RexCall.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ojUnaryExpressionOrdinal

private final int ojUnaryExpressionOrdinal
Constructor Detail

OJRexUnaryExpressionImplementor

public OJRexUnaryExpressionImplementor(int ojUnaryExpressionOrdinal)
Method Detail

implement

public Expression implement(RexToOJTranslator translator,
                            RexCall call,
                            Expression[] operands)
Description copied from interface: OJRexImplementor
Implements a single RexCall.

Specified by:
implement in interface OJRexImplementor
Parameters:
translator - provides translation context
call - the call to be translated
operands - 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
Parameters:
call - the call for which translation is being considered
Returns:
whether the call can be implemented