List<PyNamedParameter> (@NotNull StructuredDocString docString, PyParameter @NotNull [] realParams) { final List<PyNamedParameter> missing = new ArrayList<>(); final List<String> docStringParameters = docString.getParameters(); if (docStringParameters.isEmpty()) { return Collections.emptyList(); } for (PyParameter p : realParams) { final PyNamedParameter named = as(p, PyNamedParameter.class); if (p.isSelf() || named == null || named.isPositionalContainer() || named.isKeywordContainer()) { continue; } if (!docStringParameters.contains(p.getName())) { missing.add((PyNamedParameter)p); } } return missing; }