code: def clistream(reporter, *args, **kwargs):
      
      # Follow the rule of `parse_arguments()`
      files = kwargs.get('files')
      encoding = kwargs.get('input_encoding', DEFAULT_ENCODING)
      processes = kwargs.get('processes')
      chunksize = kwargs.get('chunksize')
  
      from clitool.processor import CliHandler, Streamer
      Handler = kwargs.get('Handler')
      if Handler:
          warnings.warn('"Handler" keyword will be removed from next release.',
              DeprecationWarning)
      else:
          Handler = CliHandler
      s = Streamer(reporter, processes=processes, *args)
      handler = Handler(s, kwargs.get('delimiter'))
  
      return handler.handle(files, encoding, chunksize)
docs: Handle stream data on command line interface,
      and returns statistics of success, error, and total amount.
  
      More detailed information is available on underlying feature,
      :mod:`clitool.processor`.
  
      :param Handler: [DEPRECATED] Handler for file-like streams.
              (default: :class:`clitool.processor.CliHandler`)
      :type Handler: object which supports `handle` method.
      :param reporter: callback to report processed value
      :type reporter: callable
      :param delimiter: line delimiter [optional]
      :type delimiter: string
      :param args: functions to parse each item in the stream.
      :param kwargs: keywords, including ``files`` and ``input_encoding``.
      :rtype: list