String () { if (myParameters == null) { return String.format("ParamSpec(\"%s\")", myName); } else { final TypeEvalContext context = TypeEvalContext.codeInsightFallback(null); return String.format("[%s]", StringUtil.join(myParameters, param -> { if (param != null) { final PyType type = param.getType(context); return type != null ? type.getName() : PyNames.UNKNOWN_TYPE; } return PyNames.UNKNOWN_TYPE; }, ", ")); } }