Commit 64d19fc6 authored by terrymanu's avatar terrymanu
Browse files

for #2084, refactor ColumnSelectItemExtractor

parent acd83083
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -38,10 +38,11 @@ public final class ColumnSelectItemExtractor implements OptionalSQLSegmentExtrac
    
    @Override
    public Optional<ColumnSelectItemSegment> extract(final ParserRuleContext expressionNode) {
        if (!RuleName.COLUMN_NAME.getName().equals(expressionNode.getChild(0).getClass().getSimpleName())) {
        Optional<ParserRuleContext> columnNode = ExtractorUtils.findFirstChildNodeNoneRecursive(expressionNode, RuleName.COLUMN_NAME);
        if (!columnNode.isPresent()) {
            return Optional.absent();
        }
        Optional<ColumnSegment> columnSegment = columnExtractor.extract((ParserRuleContext) expressionNode.getChild(0));
        Optional<ColumnSegment> columnSegment = columnExtractor.extract(columnNode.get());
        Preconditions.checkState(columnSegment.isPresent());
        ColumnSelectItemSegment result = new ColumnSelectItemSegment(columnSegment.get());
        Optional<ParserRuleContext> aliasNode = ExtractorUtils.findFirstChildNodeNoneRecursive(expressionNode, RuleName.ALIAS);