boolean (IElementType type, PsiExpression[] expressions) { if (expressions.length != 2) return false; if (type.equals(JavaTokenType.MINUS)) { return areExpressionsIdenticalWithoutSideEffects(expressions[0], expressions[1]); } if (type.equals(JavaTokenType.DIV) || type.equals(JavaTokenType.PERC)) { return areExpressionsIdenticalWithoutSideEffects(expressions[0], expressions[1]) && !isZero(expressions[0]) || (type.equals(JavaTokenType.DIV) && isOne(expressions[1])); } if (type.equals(JavaTokenType.ASTERISK)) { return (isOne(expressions[0]) || isOne(expressions[1])) && Objects.requireNonNull(expressions[0].getType()).equals(expressions[1].getType()); } return false; }