docs: def _flatten(result, value, separator, mode):
      """
      Args:
          result (list): Will hold all flattened values
          value: Possibly nested arguments (sequence of lists, nested lists)
          separator (str | unicode | None): Split values with `separator` if specified
          mode (int): Describes how keep flattenened values
  
      Returns:
          list: 'value' flattened out (leaves from all involved lists/tuples)
      """
      if value is None or value is UNSET:
          if mode & SHELL:
              # Convenience: allow to filter out ["--switch", None] easily
              if result and result[-1].startswith("-"):
                  result.pop(-1)
              return
  
          if mode & SANITIZED:
              return
  
      if value is not None:
          if isinstance(value, (list, tuple, set)):
              for item in value:
                  _flatten(result, item, separator, mode)
              return
  
          if separator and hasattr(value, "split") and separator in value:
              _flatten(result, value.split(separator), separator, mode)
              return
  
      if (mode & UNIQUE == 0) or value not in result:
          result.append(value)