Package org.apache.drill.exec.expr
Class DrillFuncHolderExpr
java.lang.Object
org.apache.drill.common.expression.LogicalExpressionBase
org.apache.drill.common.expression.FunctionHolderExpression
org.apache.drill.exec.expr.DrillFuncHolderExpr
- All Implemented Interfaces:
Iterable<LogicalExpression>,LogicalExpression
public class DrillFuncHolderExpr
extends FunctionHolderExpression
implements Iterable<LogicalExpression>
Represents the call of a function within a query and includes
the actual arguments and a reference to the function declaration (as a
"function holder.")
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.drill.common.expression.LogicalExpression
LogicalExpression.De, LogicalExpression.Se -
Field Summary
Fields inherited from class org.apache.drill.common.expression.FunctionHolderExpression
args, nameUsed -
Constructor Summary
ConstructorsConstructorDescriptionDrillFuncHolderExpr(String nameUsed, DrillFuncHolder holder, List<LogicalExpression> args, ExpressionPosition pos) -
Method Summary
Modifier and TypeMethodDescriptionbooleanargConstantOnly(int i) constant input expected for i'th argument?copy(List<LogicalExpression> args) intReturn the underlying function implementation holder.intbooleanbooleanisRandom()Is the function output non-deterministic?iterator()voidsetInterpreter(DrillSimpleFunc interpreter) Methods inherited from class org.apache.drill.common.expression.FunctionHolderExpression
accept, getFieldReference, getName, setFieldReference, toStringMethods inherited from class org.apache.drill.common.expression.LogicalExpressionBase
getDescription, getPosition, iMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
DrillFuncHolderExpr
public DrillFuncHolderExpr(String nameUsed, DrillFuncHolder holder, List<LogicalExpression> args, ExpressionPosition pos)
-
-
Method Details
-
getMajorType
- Specified by:
getMajorTypein interfaceLogicalExpression- Overrides:
getMajorTypein classLogicalExpressionBase
-
iterator
- Specified by:
iteratorin interfaceIterable<LogicalExpression>
-
getHolder
Description copied from class:FunctionHolderExpressionReturn the underlying function implementation holder. That is, returns the function declaration.- Specified by:
getHolderin classFunctionHolderExpression
-
isAggregating
public boolean isAggregating()- Specified by:
isAggregatingin classFunctionHolderExpression- Returns:
- aggregating function or not
-
isRandom
public boolean isRandom()Description copied from class:FunctionHolderExpressionIs the function output non-deterministic?- Specified by:
isRandomin classFunctionHolderExpression
-
argConstantOnly
public boolean argConstantOnly(int i) Description copied from class:FunctionHolderExpressionconstant input expected for i'th argument?- Specified by:
argConstantOnlyin classFunctionHolderExpression- Parameters:
i-- Returns:
- True if a constant input is expected for the i'th argument. False otherwise.
-
getSelfCost
public int getSelfCost()- Specified by:
getSelfCostin interfaceLogicalExpression- Overrides:
getSelfCostin classLogicalExpressionBase
-
getCumulativeCost
public int getCumulativeCost()- Specified by:
getCumulativeCostin interfaceLogicalExpression- Overrides:
getCumulativeCostin classLogicalExpressionBase
-
copy
- Specified by:
copyin classFunctionHolderExpression- Returns:
- a copy of FunctionHolderExpression, with passed in argument list.
-
setInterpreter
-
getInterpreter
-