本文整理汇总了Java中com.siyeh.ig.psiutils.ExpressionUtils.isVariableLessThanComparison方法的典型用法代码示例。如果您正苦于以下问题:Java ExpressionUtils.isVariableLessThanComparison方法的具体用法?Java ExpressionUtils.isVariableLessThanComparison怎么用?Java ExpressionUtils.isVariableLessThanComparison使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.siyeh.ig.psiutils.ExpressionUtils
的用法示例。
在下文中一共展示了ExpressionUtils.isVariableLessThanComparison方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: visitForStatement
import com.siyeh.ig.psiutils.ExpressionUtils; //导入方法依赖的package包/类
@Override
public void visitForStatement(
@NotNull PsiForStatement statement) {
super.visitForStatement(statement);
final PsiStatement initialization = statement.getInitialization();
if (!(initialization instanceof PsiDeclarationStatement)) {
return;
}
final PsiDeclarationStatement declaration =
(PsiDeclarationStatement)initialization;
final PsiElement[] declaredElements =
declaration.getDeclaredElements();
if (declaredElements.length != 1) {
return;
}
final PsiElement declaredElement = declaredElements[0];
if (!(declaredElement instanceof PsiLocalVariable)) {
return;
}
final PsiLocalVariable variable = (PsiLocalVariable)declaredElement;
final PsiExpression initialValue = variable.getInitializer();
if (initialValue == null) {
return;
}
final PsiExpression condition = statement.getCondition();
if (!ExpressionUtils.isVariableLessThanComparison(condition,
variable)) {
return;
}
final PsiStatement update = statement.getUpdate();
if (!VariableAccessUtils.variableIsIncremented(variable, update)) {
return;
}
final PsiStatement body = statement.getBody();
if (!bodyIsArrayToCollectionCopy(body, variable, true)) {
return;
}
registerStatementError(statement);
}
示例2: visitForStatement
import com.siyeh.ig.psiutils.ExpressionUtils; //导入方法依赖的package包/类
@Override
public void visitForStatement(
@NotNull PsiForStatement statement) {
super.visitForStatement(statement);
final PsiStatement initialization = statement.getInitialization();
if (!(initialization instanceof PsiDeclarationStatement)) {
return;
}
final PsiDeclarationStatement declaration =
(PsiDeclarationStatement)initialization;
final PsiElement[] declaredElements =
declaration.getDeclaredElements();
if (declaredElements.length != 1) {
return;
}
final PsiElement declaredElement = declaredElements[0];
if (!(declaredElement instanceof PsiLocalVariable)) {
return;
}
final PsiLocalVariable variable = (PsiLocalVariable)declaredElement;
final PsiExpression initialValue = variable.getInitializer();
if (initialValue == null) {
return;
}
final PsiStatement update = statement.getUpdate();
final boolean decrement;
if (VariableAccessUtils.variableIsIncremented(variable, update)) {
decrement = false;
}
else if (VariableAccessUtils.variableIsDecremented(variable,
update)) {
decrement = true;
}
else {
return;
}
final PsiExpression condition = statement.getCondition();
if (decrement) {
if (!ExpressionUtils.isVariableGreaterThanComparison(
condition, variable)) {
return;
}
}
else {
if (!ExpressionUtils.isVariableLessThanComparison(
condition, variable)) {
return;
}
}
final PsiStatement body = statement.getBody();
if (!bodyIsArrayCopy(body, variable, null)) {
return;
}
registerStatementError(statement, Boolean.valueOf(decrement));
}