org.apache.pig.newplan.logical.expression
Class CastExpression

java.lang.Object
  extended by org.apache.pig.newplan.Operator
      extended by org.apache.pig.newplan.logical.expression.LogicalExpression
          extended by org.apache.pig.newplan.logical.expression.UnaryExpression
              extended by org.apache.pig.newplan.logical.expression.CastExpression

public class CastExpression
extends UnaryExpression


Field Summary
 
Fields inherited from class org.apache.pig.newplan.logical.expression.LogicalExpression
fieldSchema, uidOnlyFieldSchema
 
Fields inherited from class org.apache.pig.newplan.Operator
annotations, hashPrime, location, name, plan
 
Constructor Summary
CastExpression(OperatorPlan plan, LogicalExpression exp, LogicalSchema.LogicalFieldSchema fs)
           
 
Method Summary
 void accept(PlanVisitor v)
          Accept a visitor at this node in the graph.
 LogicalExpression deepCopy(LogicalExpressionPlan lgExpPlan)
          Create the deep copy of this expression and add that into the passed LogicalExpressionPlan Return the copy of this expression with updated logical expression plan.
 LogicalSchema.LogicalFieldSchema getFieldSchema()
          Get the field schema for the output of this expression operator.
 FuncSpec getFuncSpec()
          Get the FuncSpec that performs the casting functionality
 boolean isEqual(Operator other)
          This is like a shallow equals comparison.
 void setFuncSpec(FuncSpec spec)
          Set the FuncSpec that performs the casting functionality
 
Methods inherited from class org.apache.pig.newplan.logical.expression.UnaryExpression
getExpression
 
Methods inherited from class org.apache.pig.newplan.logical.expression.LogicalExpression
getNextUid, getType, neverUseForRealSetFieldSchema, resetFieldSchema, resetNextUid, resetUid, toString
 
Methods inherited from class org.apache.pig.newplan.Operator
annotate, getAnnotation, getLocation, getName, getPlan, removeAnnotation, setLocation, setPlan
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

CastExpression

public CastExpression(OperatorPlan plan,
                      LogicalExpression exp,
                      LogicalSchema.LogicalFieldSchema fs)
Method Detail

accept

public void accept(PlanVisitor v)
            throws FrontendException
Description copied from class: Operator
Accept a visitor at this node in the graph.

Specified by:
accept in class Operator
Parameters:
v - Visitor to accept.
Throws:
FrontendException

setFuncSpec

public void setFuncSpec(FuncSpec spec)
Set the FuncSpec that performs the casting functionality

Parameters:
spec - the FuncSpec that does the casting

getFuncSpec

public FuncSpec getFuncSpec()
Get the FuncSpec that performs the casting functionality

Returns:
the FuncSpec that does the casting

isEqual

public boolean isEqual(Operator other)
                throws FrontendException
Description copied from class: Operator
This is like a shallow equals comparison. It returns true if two operators have equivalent properties even if they are different objects. Here properties mean equivalent plan and equivalent name.

Specified by:
isEqual in class Operator
Returns:
true if two object have equivalent properties, else false
Throws:
FrontendException

getFieldSchema

public LogicalSchema.LogicalFieldSchema getFieldSchema()
                                                throws FrontendException
Description copied from class: LogicalExpression
Get the field schema for the output of this expression operator. This does not merely return the field schema variable. If schema is not yet set, this will attempt to construct it. Therefore it is abstract since each operator will need to construct its field schema differently.

Specified by:
getFieldSchema in class LogicalExpression
Returns:
the FieldSchema
Throws:
FrontendException

deepCopy

public LogicalExpression deepCopy(LogicalExpressionPlan lgExpPlan)
                           throws FrontendException
Description copied from class: LogicalExpression
Create the deep copy of this expression and add that into the passed LogicalExpressionPlan Return the copy of this expression with updated logical expression plan.

Specified by:
deepCopy in class LogicalExpression
Parameters:
lgExpPlan - LogicalExpressionPlan in which this expression will be added.
Returns:
LogicalExpression with its own logical expression plan.
Throws:
FrontendException


Copyright © ${year} The Apache Software Foundation