List<PsiExpression> (@Nullable PsiExpression maybeList) { maybeList = PsiUtil.skipParenthesizedExprDown(maybeList); if (LIST_FACTORY.matches(maybeList) && maybeList instanceof PsiMethodCallExpression callExpression) { final PsiExpression[] expressions = callExpression.getArgumentList().getExpressions(); if (expressions.length == 0) { return Collections.emptyList(); } final PsiExpression firstArgument = PsiUtil.skipParenthesizedExprDown(expressions[0]); if (MethodCallUtils.isVarArgCall(callExpression)) { final List<PsiExpression> varargs = getVarargs(firstArgument); if (varargs != null) { return varargs; } } // Skip calls with explicit arrays, for example: List.of(new Class<?>[0]) if (isVarargAsArray(firstArgument)) { return null; } return Arrays.asList(expressions); } return null; }