@Override
    public void optional(OptionalType type) {
      if (type.bitwiseOrUnionAllowed) {
        type.type.accept(this);
        add(styled(" | ", PyHighlighter.PY_OPERATION_SIGN));
        add(styled("None", PyHighlighter.PY_KEYWORD)); //NON-NLS
      }
      else {
        add(escaped("Optional")); //NON-NLS
        add(styled("[", PyHighlighter.PY_BRACKETS));
        type.type.accept(this);
        add(styled("]", PyHighlighter.PY_BRACKETS));
      }
    }
@Override
    public void optional(OptionalType type)