private static boolean isArrayElement(ExpressionTree expression) { return expression.is(Tree.Kind.BRACKET_MEMBER_EXPRESSION) && ((BracketMemberExpressionTree) expression).object().types().containsOnly(Type.Kind.ARRAY); }
private static boolean isWindowBracketAccess(ExpressionTree tree) { return tree.is(Tree.Kind.BRACKET_MEMBER_EXPRESSION) && ((BracketMemberExpressionTree) tree).object().types().contains(Type.Kind.WINDOW); }
private static boolean isArrayElement(ExpressionTree expression) { return expression.is(Tree.Kind.BRACKET_MEMBER_EXPRESSION) && ((BracketMemberExpressionTree) expression).object().types().containsOnly(Type.Kind.ARRAY); }
@Override public void visitAssignmentExpression(AssignmentExpressionTree tree) { if (tree.variable().is(Tree.Kind.BRACKET_MEMBER_EXPRESSION)) { BracketMemberExpressionTree memberExpression = (BracketMemberExpressionTree) tree.variable(); if (memberExpression.object().types().containsOnly(Kind.ARRAY)) { ExpressionTree arrayIndex = memberExpression.property(); if (arrayIndex.types().containsOnly(Kind.STRING)) { addIssue(arrayIndex, String.format(MESSAGE, CheckUtils.asString(memberExpression.object()))); } } } super.visitAssignmentExpression(tree); } }
private static boolean isElementWrite(ExpressionStatementTree statement, Usage usage) { if (statement.expression().is(KindSet.ASSIGNMENT_KINDS)) { ExpressionTree variable = ((AssignmentExpressionTree) statement.expression()).variable(); if (variable.is(Kind.BRACKET_MEMBER_EXPRESSION)) { return ((BracketMemberExpressionTree) variable).object() == usage.identifierTree(); } } return false; }