本文整理匯總了Java中com.siyeh.ig.psiutils.ExpressionUtils.isZeroLengthArrayConstruction方法的典型用法代碼示例。如果您正苦於以下問題:Java ExpressionUtils.isZeroLengthArrayConstruction方法的具體用法?Java ExpressionUtils.isZeroLengthArrayConstruction怎麽用?Java ExpressionUtils.isZeroLengthArrayConstruction使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.siyeh.ig.psiutils.ExpressionUtils
的用法示例。
在下文中一共展示了ExpressionUtils.isZeroLengthArrayConstruction方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: visitNewExpression
import com.siyeh.ig.psiutils.ExpressionUtils; //導入方法依賴的package包/類
@Override
public void visitNewExpression(
@NotNull PsiNewExpression expression) {
super.visitNewExpression(expression);
if (!ExpressionUtils.isZeroLengthArrayConstruction(expression)) {
return;
}
if (ExpressionUtils.isDeclaredConstant(expression)) {
return;
}
registerError(expression);
}
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:13,代碼來源:ZeroLengthArrayInitializationInspectionBase.java
示例2: visitMethodCallExpression
import com.siyeh.ig.psiutils.ExpressionUtils; //導入方法依賴的package包/類
@Override
public void visitMethodCallExpression(PsiMethodCallExpression expression) {
super.visitMethodCallExpression(expression);
final PsiReferenceExpression methodExpression = expression.getMethodExpression();
@NonNls final String methodName = methodExpression.getReferenceName();
if (!"toArray".equals(methodName)) {
return;
}
final PsiExpressionList argumentList = expression.getArgumentList();
final PsiExpression[] arguments = argumentList.getExpressions();
if (arguments.length != 1) {
return;
}
final PsiExpression argument = arguments[0];
final PsiType type = argument.getType();
if (!(type instanceof PsiArrayType)) {
return;
}
if (type.getArrayDimensions() != 1) {
return;
}
if (argument instanceof PsiReferenceExpression) {
final PsiReferenceExpression referenceExpression = (PsiReferenceExpression)argument;
final PsiElement element = referenceExpression.resolve();
if (!(element instanceof PsiField)) {
return;
}
final PsiField field = (PsiField)element;
if (!CollectionUtils.isConstantEmptyArray(field)) {
return;
}
}
else if (!ExpressionUtils.isZeroLengthArrayConstruction(argument)) {
return;
}
final PsiMethod method = expression.resolveMethod();
if (method == null) {
return;
}
final PsiClass containingClass = method.getContainingClass();
if (!InheritanceUtil.isInheritor(containingClass, CommonClassNames.JAVA_UTIL_COLLECTION)) {
return;
}
registerMethodCallError(expression, expression, argument);
}
開發者ID:jskierbi,項目名稱:intellij-ce-playground,代碼行數:46,代碼來源:ToArrayCallWithZeroLengthArrayArgumentInspectionBase.java