@Override protected Type visitSubscriptExpression(SubscriptExpression node, StackableAstVisitorContext<Context> context) { return getOperator(context, node, SUBSCRIPT, node.getBase(), node.getIndex()); }
@Override protected String visitSubscriptExpression(SubscriptExpression node, Void context) { return formatSql(node.getBase(), parameters) + "[" + formatSql(node.getIndex(), parameters) + "]"; }
@Override protected R visitSubscriptExpression(SubscriptExpression node, C context) { process(node.getBase(), context); process(node.getIndex(), context); return null; }
@Override protected Boolean visitSubscriptExpression(SubscriptExpression node, Void context) { return process(node.getBase(), context) && process(node.getIndex(), context); }
@Override protected Object visitSubscriptExpression(SubscriptExpression node, Object context) { Object base = process(node.getBase(), context); if (base == null) { return null; } Object index = process(node.getIndex(), context); if (index == null) { return null; } if ((index instanceof Long) && isArray(type(node.getBase()))) { ArraySubscriptOperator.checkArrayIndex((Long) index); } if (hasUnresolvedValue(base, index)) { return new SubscriptExpression(toExpression(base, type(node.getBase())), toExpression(index, type(node.getIndex()))); } return invokeOperator(OperatorType.SUBSCRIPT, types(node.getBase(), node.getIndex()), ImmutableList.of(base, index)); }
@Override protected RowExpression visitSubscriptExpression(SubscriptExpression node, Void context) { RowExpression base = process(node.getBase(), context); RowExpression index = process(node.getIndex(), context); return call( subscriptSignature(getType(node), base.getType(), index.getType()), getType(node), base, index); }
@Override protected String visitSubscriptExpression(SubscriptExpression node, Void context) { return formatSql(node.getBase(), tableNameMapper, columnNameMapper.orElse(null), queryWithTables, escape) + "[" + formatSql(node.getIndex(), tableNameMapper, columnNameMapper.orElse(null), queryWithTables, escape) + "]"; }
@Override protected Type visitSubscriptExpression(SubscriptExpression node, StackableAstVisitorContext<AnalysisContext> context) { return getOperator(context, node, SUBSCRIPT, node.getBase(), node.getIndex()); }
@Override protected R visitSubscriptExpression(SubscriptExpression node, C context) { process(node.getBase(), context); process(node.getIndex(), context); return null; }
@Override protected String visitSubscriptExpression(SubscriptExpression node, Void context) { return formatSql(node.getBase(), parameters) + "[" + formatSql(node.getIndex(), parameters) + "]"; }
@Override protected R visitSubscriptExpression(SubscriptExpression node, C context) { process(node.getBase(), context); process(node.getIndex(), context); return null; }
@Override protected String visitSubscriptExpression(SubscriptExpression node, Boolean unmangleNames) { return formatSql(node.getBase(), unmangleNames) + "[" + formatSql(node.getIndex(), unmangleNames) + "]"; }
@Override protected Object visitSubscriptExpression(SubscriptExpression node, Object context) { Object base = process(node.getBase(), context); if (base == null) { return null; } Object index = process(node.getIndex(), context); if (index == null) { return null; } if ((index instanceof Long) && isArray(expressionTypes.get(node.getBase()))) { ArraySubscriptOperator.checkArrayIndex((Long) index); } if (hasUnresolvedValue(base, index)) { return new SubscriptExpression(toExpression(base, expressionTypes.get(node.getBase())), toExpression(index, expressionTypes.get(node.getIndex()))); } return invokeOperator(OperatorType.SUBSCRIPT, types(node.getBase(), node.getIndex()), ImmutableList.of(base, index)); }
@Override protected Boolean visitSubscriptExpression(SubscriptExpression node, Void context) { return process(node.getBase(), context) && process(node.getIndex(), context); }
@Override protected String visitSubscriptExpression(SubscriptExpression node, Boolean unmangleNames) { return formatSql(node.getBase(), unmangleNames) + "[" + formatSql(node.getIndex(), unmangleNames) + "]"; }
@Override protected RowExpression visitSubscriptExpression(SubscriptExpression node, Void context) { RowExpression base = process(node.getBase(), context); RowExpression index = process(node.getIndex(), context); return call( subscriptSignature(types.get(node), base.getType(), index.getType()), types.get(node), base, index); }
}else if(node instanceof SubscriptExpression){ SubscriptExpression se = (SubscriptExpression) node; Column column = selectParser.visitExpression(se.getBase(), state); try{ int offset = Integer.parseInt( se.getIndex().toString() );