void (@NotNull PsiMethodCallExpression accessCall, @Nullable ReflectiveType valueType, int coordinateArguments, @NotNull ProblemsHolder holder) { if (valueType == null) return; if (isWithReturnValue(accessCall)) { checkReturnType(accessCall, valueType, false, holder); } final PsiExpressionList accessArgumentList = accessCall.getArgumentList(); final PsiExpression[] accessArguments = accessArgumentList.getExpressions(); final int requiredArgumentCount = getVarHandleArgumentCount(accessCall, coordinateArguments); if (!checkArgumentCount(accessArguments, requiredArgumentCount, 0, accessArgumentList, holder)) return; LOG.assertTrue(accessArguments.length == requiredArgumentCount); for (int i = coordinateArguments; i < requiredArgumentCount; i++) { checkArgumentType(accessArguments[i], valueType, accessArgumentList, false, false, holder); } }