List<PyCallableParameter> (@NotNull TypeEvalContext context) { return Optional .ofNullable(context.getType(this)) .filter(PyCallableType.class::isInstance) .map(PyCallableType.class::cast) .map(callableType -> callableType.getParameters(context)) .orElseGet(() -> ContainerUtil.map(getParameterList().getParameters(), PyCallableParameterImpl::psi)); }