@Override public boolean matches(final INode other, final Match match) { if (other instanceof ArrayCreationExpression) { final ArrayCreationExpression otherExpression = (ArrayCreationExpression) other; return !otherExpression.isNull() && getType().matches(otherExpression.getType(), match) && getDimensions().matches(otherExpression.getDimensions(), match) && getInitializer().matches(otherExpression.getInitializer(), match) && getAdditionalArraySpecifiers().matches(otherExpression.getAdditionalArraySpecifiers(), match); } return false; } }
@Override public boolean matches(final INode other, final Match match) { if (other instanceof ArrayCreationExpression) { final ArrayCreationExpression otherExpression = (ArrayCreationExpression) other; return !otherExpression.isNull() && getType().matches(otherExpression.getType(), match) && getDimensions().matches(otherExpression.getDimensions(), match) && getInitializer().matches(otherExpression.getInitializer(), match) && getAdditionalArraySpecifiers().matches(otherExpression.getAdditionalArraySpecifiers(), match); } return false; } }
@Override public boolean matches(final INode other, final Match match) { if (other instanceof ArrayCreationExpression) { final ArrayCreationExpression otherExpression = (ArrayCreationExpression) other; return !otherExpression.isNull() && getType().matches(otherExpression.getType(), match) && getDimensions().matches(otherExpression.getDimensions(), match) && getInitializer().matches(otherExpression.getInitializer(), match) && getAdditionalArraySpecifiers().matches(otherExpression.getAdditionalArraySpecifiers(), match); } return false; } }
@Override public ResolveResult visitArrayCreationExpression(final ArrayCreationExpression node, final Void data) { final TypeReference elementType = node.getType().toTypeReference(); if (elementType == null) { return null; } final int rank = node.getDimensions().size() + node.getAdditionalArraySpecifiers().size(); TypeReference arrayType = elementType; for (int i = 0; i < rank; i++) { arrayType = arrayType.makeArrayType(); } return new ResolveResult(arrayType); }
@Override public ResolveResult visitArrayCreationExpression(final ArrayCreationExpression node, final Void data) { final TypeReference elementType = node.getType().toTypeReference(); if (elementType == null) { return null; } final int rank = node.getDimensions().size() + node.getAdditionalArraySpecifiers().size(); TypeReference arrayType = elementType; for (int i = 0; i < rank; i++) { arrayType = arrayType.makeArrayType(); } return new ResolveResult(arrayType); }
@Override public Void visitArrayInitializerExpression(final ArrayInitializerExpression node, final Void data) { super.visitArrayInitializerExpression(node, data); final ArrayCreationExpression creation = firstOrDefault(ofType(node.getAncestors(), ArrayCreationExpression.class)); if (creation == null || !creation.getAdditionalArraySpecifiers().hasSingleElement()) { return null; } for (final Expression element : node.getElements()) { addCastForAssignment(creation.getType(), element); } return null; }
@Override public ResolveResult visitArrayCreationExpression(final ArrayCreationExpression node, final Void data) { final TypeReference elementType = node.getType().toTypeReference(); if (elementType == null) { return null; } final int rank = node.getDimensions().size() + node.getAdditionalArraySpecifiers().size(); TypeReference arrayType = elementType; for (int i = 0; i < rank; i++) { arrayType = arrayType.makeArrayType(); } return new ResolveResult(arrayType); }
final MemberReferenceExpression target = (MemberReferenceExpression) node.getTarget(); if (!newArray.getAdditionalArraySpecifiers().hasSingleElement()) { return null;
final MemberReferenceExpression target = (MemberReferenceExpression) node.getTarget(); if (!newArray.getAdditionalArraySpecifiers().hasSingleElement()) { return null;
final MemberReferenceExpression target = (MemberReferenceExpression) node.getTarget(); if (!newArray.getAdditionalArraySpecifiers().hasSingleElement()) { return null;
@Override public Void visitArrayCreationExpression(final ArrayCreationExpression node, final Void ignored) { startNode(node); boolean needType = true; if (node.getDimensions().isEmpty() && node.getType() != null && (node.getParent() instanceof ArrayInitializerExpression || node.getParent() instanceof VariableInitializer)) { needType = false; } if (needType) { writeKeyword(ArrayCreationExpression.NEW_KEYWORD_ROLE); node.getType().acceptVisitor(this, ignored); for (final Expression dimension : node.getDimensions()) { writeToken(Roles.LEFT_BRACKET); dimension.acceptVisitor(this, ignored); writeToken(Roles.RIGHT_BRACKET); } for (final ArraySpecifier specifier : node.getAdditionalArraySpecifiers()) { specifier.acceptVisitor(this, ignored); } if (node.getInitializer() != null && !node.getInitializer().isNull()) { space(); } } node.getInitializer().acceptVisitor(this, ignored); endNode(node); return null; }
@Override public Void visitArrayCreationExpression(final ArrayCreationExpression node, final Void ignored) { startNode(node); boolean needType = true; if (node.getDimensions().isEmpty() && node.getType() != null && (node.getParent() instanceof ArrayInitializerExpression || node.getParent() instanceof VariableInitializer)) { needType = false; } if (needType) { writeKeyword(ArrayCreationExpression.NEW_KEYWORD_ROLE); node.getType().acceptVisitor(this, ignored); for (final Expression dimension : node.getDimensions()) { writeToken(Roles.LEFT_BRACKET); dimension.acceptVisitor(this, ignored); writeToken(Roles.RIGHT_BRACKET); } for (final ArraySpecifier specifier : node.getAdditionalArraySpecifiers()) { specifier.acceptVisitor(this, ignored); } if (node.getInitializer() != null && !node.getInitializer().isNull()) { space(); } } node.getInitializer().acceptVisitor(this, ignored); endNode(node); return null; }
@Override public Void visitArrayCreationExpression(final ArrayCreationExpression node, final Void ignored) { startNode(node); boolean needType = true; if (node.getDimensions().isEmpty() && node.getType() != null && (node.getParent() instanceof ArrayInitializerExpression || node.getParent() instanceof VariableInitializer)) { needType = false; } if (needType) { writeKeyword(ArrayCreationExpression.NEW_KEYWORD_ROLE); node.getType().acceptVisitor(this, ignored); for (final Expression dimension : node.getDimensions()) { writeToken(Roles.LEFT_BRACKET); dimension.acceptVisitor(this, ignored); writeToken(Roles.RIGHT_BRACKET); } for (final ArraySpecifier specifier : node.getAdditionalArraySpecifiers()) { specifier.acceptVisitor(this, ignored); } if (node.getInitializer() != null && !node.getInitializer().isNull()) { space(); } } node.getInitializer().acceptVisitor(this, ignored); endNode(node); return null; }
arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType(); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType();
arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType(); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType();
arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType(); arrayCreation.getAdditionalArraySpecifiers().add(new ArraySpecifier()); elementType = elementType.getElementType();