protected void processList(@NotNull Collection<TypeModel> list, @NotNull @Nls String separator) {
      boolean first = true;
      for (TypeModel t : list) {
        if (!first) {
          if (separator.equals(", ")) {
            add(styled(separator, PyHighlighter.PY_COMMA));
          }
          else if (separator.equals(" | ")) {
            add(styled(separator, PyHighlighter.PY_OPERATION_SIGN));
          }
          else {
            add(escaped(separator));
          }
        }
        else {
          first = false;
        }

        t.accept(this);
      }
    }
protected void processList(@NotNull Collection<TypeModel> list, @NotNull @Nls String separator)