@Override public Object process(Node nd, Stack<Node> stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { for (NodeProcessor proc: procs) { proc.process(nd, stack, procCtx, nodeOutputs); } return null; } }
@Override public Object process(Node nd, Stack<Node> stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { for (NodeProcessor proc: procs) { proc.process(nd, stack, procCtx, nodeOutputs); } return null; } }
return proc.process(nd, ndStack, procCtx, nodeOutputs); } else { return null;
return proc.process(nd, ndStack, procCtx, nodeOutputs); } else { return null;
protected ColumnInfo resolveDot(ASTNode node) { try { TypeCheckCtx tcCtx = new TypeCheckCtx(parentQueryRR); String str = BaseSemanticAnalyzer.unescapeIdentifier(node.getChild(1).getText()); ExprNodeDesc idDesc = new ExprNodeConstantDesc(TypeInfoFactory.stringTypeInfo, str.toLowerCase()); Object desc = defaultExprProcessor.process(node, stack, tcCtx, (Object) null, idDesc); if (desc != null && desc instanceof ExprNodeColumnDesc) { ExprNodeColumnDesc colDesc = (ExprNodeColumnDesc) desc; String[] qualName = parentQueryRR.reverseLookup(colDesc.getColumn()); return parentQueryRR.get(qualName[0], qualName[1]); } } catch(SemanticException se) { } return null; }
protected ColumnInfo resolveDot(ASTNode node) { try { TypeCheckCtx tcCtx = new TypeCheckCtx(parentQueryRR); String str = BaseSemanticAnalyzer.unescapeIdentifier(node.getChild(1).getText()); ExprNodeDesc idDesc = new ExprNodeConstantDesc(TypeInfoFactory.stringTypeInfo, str.toLowerCase()); Object desc = defaultExprProcessor.process(node, stack, tcCtx, (Object) null, idDesc); if (desc != null && desc instanceof ExprNodeColumnDesc) { ExprNodeColumnDesc colDesc = (ExprNodeColumnDesc) desc; String[] qualName = parentQueryRR.reverseLookup(colDesc.getColumn()); return parentQueryRR.get(qualName[0], qualName[1]); } } catch(SemanticException se) { } return null; }
@Override public Object process(Node nd, Stack<Node> stack, NodeProcessorCtx procCtx, Object... nodeOutputs) throws SemanticException { for (NodeProcessor proc: procs) { proc.process(nd, stack, procCtx, nodeOutputs); } return null; } }
return proc.process(nd, ndStack, procCtx, nodeOutputs); } else { return null;
return proc.process(nd, ndStack, procCtx, nodeOutputs); } else { return null;
protected ColumnInfo resolveDot(ASTNode node) { try { TypeCheckCtx tcCtx = new TypeCheckCtx(parentQueryRR); String str = BaseSemanticAnalyzer.unescapeIdentifier(node.getChild(1).getText()); ExprNodeDesc idDesc = new ExprNodeConstantDesc(TypeInfoFactory.stringTypeInfo, str); ExprNodeColumnDesc colDesc = (ExprNodeColumnDesc) defaultExprProcessor.process(node, stack, tcCtx, (Object) null, idDesc); if ( colDesc != null ) { String[] qualName = parentQueryRR.reverseLookup(colDesc.getColumn()); return parentQueryRR.get(qualName[0], qualName[1]); } } catch(SemanticException se) { } return null; }