public class TypeCheckProcFactory.DefaultExprProcessor extends Object implements SemanticNodeProcessor
Constructor and Description |
---|
DefaultExprProcessor() |
Modifier and Type | Method and Description |
---|---|
T |
createConversionCast(T column,
PrimitiveTypeInfo tableFieldTypeInfo) |
T |
getFuncExprNodeDesc(String udfName,
T... children) |
T |
getFuncExprNodeDescWithUdfData(String udfName,
TypeInfo typeInfo,
T... children)
This function create an ExprNodeDesc for a UDF function given the
children (arguments).
|
protected List<String> |
getReferenceableColumnAliases(TypeCheckCtx ctx) |
protected T |
getXpathOrFuncExprNodeDesc(ASTNode node,
boolean isFunction,
List<T> children,
TypeCheckCtx ctx) |
protected T |
interpretNodeAsConstant(PrimitiveTypeInfo targetType,
T constChild) |
Object |
process(Node nd,
Stack<Node> stack,
NodeProcessorCtx procCtx,
Object... nodeOutputs)
Generic process for all ops that don't have specific implementations.
|
protected T |
processQualifiedColRef(TypeCheckCtx ctx,
ASTNode expr,
Object... nodeOutputs) |
protected void |
validateUDF(ASTNode expr,
boolean isFunction,
TypeCheckCtx ctx,
FunctionInfo fi,
List<T> children) |
public T getFuncExprNodeDescWithUdfData(String udfName, TypeInfo typeInfo, T... children) throws SemanticException
public T getFuncExprNodeDesc(String udfName, T... children) throws SemanticException
SemanticException
public T createConversionCast(T column, PrimitiveTypeInfo tableFieldTypeInfo) throws SemanticException
column
- column expression to converttableFieldTypeInfo
- TypeInfo to convert toSemanticException
protected void validateUDF(ASTNode expr, boolean isFunction, TypeCheckCtx ctx, FunctionInfo fi, List<T> children) throws SemanticException
SemanticException
protected T getXpathOrFuncExprNodeDesc(ASTNode node, boolean isFunction, List<T> children, TypeCheckCtx ctx) throws SemanticException
SemanticException
protected T interpretNodeAsConstant(PrimitiveTypeInfo targetType, T constChild) throws SemanticException
SemanticException
protected T processQualifiedColRef(TypeCheckCtx ctx, ASTNode expr, Object... nodeOutputs) throws SemanticException
SemanticException
public Object process(Node nd, Stack<Node> stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException
SemanticNodeProcessor
process
in interface NodeProcessor
process
in interface SemanticNodeProcessor
nd
- operator to processprocCtx
- operator processor contextnodeOutputs
- A variable argument list of outputs from other nodes in the walkSemanticException
protected List<String> getReferenceableColumnAliases(TypeCheckCtx ctx)
Copyright © 2022 The Apache Software Foundation. All rights reserved.