Package org.apache.drill.exec.expr.fn
Class DrillComplexWriterFuncHolder
java.lang.Object
org.apache.drill.exec.expr.fn.AbstractFuncHolder
org.apache.drill.exec.expr.fn.DrillFuncHolder
org.apache.drill.exec.expr.fn.DrillSimpleFuncHolder
org.apache.drill.exec.expr.fn.DrillComplexWriterFuncHolder
- All Implemented Interfaces:
- FuncHolder
- 
Constructor SummaryConstructorsConstructorDescriptionDrillComplexWriterFuncHolder(FunctionAttributes functionAttributes, FunctionInitializer initializer) 
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidcheckNullHandling(FunctionTemplate.NullHandling nullHandling) Check if function type supports provided null handling strategy.protected ClassGenerator.HoldingContainergenerateEvalBody(ClassGenerator<?> classGenerator, ClassGenerator.HoldingContainer[] inputVariables, String body, com.sun.codemodel.JVar[] workspaceJVars, FunctionHolderExpression holderExpr) Generate the eval block for a simple function, including the null-handling wrapper, if requested.booleanChecks that the current function holder stores output value using field writer instead of vector holder.Methods inherited from class org.apache.drill.exec.expr.fn.DrillSimpleFuncHoldercreateInterpreter, isNested, renderEndMethods inherited from class org.apache.drill.exec.expr.fn.DrillFuncHolderaddProtectedBlock, assignInjectableValue, checkPrecisionRange, declare, declareInputVariable, declareVarArgArray, declareWorkspaceVariables, generateBody, getAttributeParameter, getClassLoader, getCostCategory, getExpr, getInputParameters, getNullHandling, getOutputWidthCalculator, getParamCount, getParameters, getParamMajorType, getRegisteredNames, getReturnType, getReturnType, getReturnValue, getWorkspaceVars, isAggregating, isConstant, isDeterministic, isFieldReader, isInternal, isNiladic, isVarArg, matches, meth, meth, renderStart, toString, variableOutputSizeEstimateMethods inherited from class org.apache.drill.exec.expr.fn.AbstractFuncHolderrenderMiddle
- 
Constructor Details- 
DrillComplexWriterFuncHolderpublic DrillComplexWriterFuncHolder(FunctionAttributes functionAttributes, FunctionInitializer initializer) 
 
- 
- 
Method Details- 
isComplexWriterFuncHolderpublic boolean isComplexWriterFuncHolder()Description copied from interface:FuncHolderChecks that the current function holder stores output value using field writer instead of vector holder.- Specified by:
- isComplexWriterFuncHolderin interface- FuncHolder
- Overrides:
- isComplexWriterFuncHolderin class- AbstractFuncHolder
- Returns:
- true if current function holder uses field writer to store the output value
 
- 
generateEvalBodyprotected ClassGenerator.HoldingContainer generateEvalBody(ClassGenerator<?> classGenerator, ClassGenerator.HoldingContainer[] inputVariables, String body, com.sun.codemodel.JVar[] workspaceJVars, FunctionHolderExpression holderExpr) Description copied from class:DrillSimpleFuncHolderGenerate the eval block for a simple function, including the null-handling wrapper, if requested.- Overrides:
- generateEvalBodyin class- DrillSimpleFuncHolder
 
- 
checkNullHandlingDescription copied from class:DrillFuncHolderCheck if function type supports provided null handling strategy.Keep in mind that this method is invoked in DrillFuncHolder(FunctionAttributes, FunctionInitializer)constructor so make sure not to use any state fields when overriding the method to avoid uninitialized state.- Overrides:
- checkNullHandlingin class- DrillFuncHolder
- Parameters:
- nullHandling- null handling strategy defined for a function
 
 
-