code: def streamer(main_method):
      
      def main(arguments):
          streams = [StringIO(get_clipboard_data())] if (arguments and '-c' in arguments) else []
          streams = streams or ([file(_, 'r') for _ in arguments if os.path.isfile(argument)] if arguments else [])
          streams = streams or ([sys.stdin] if not (streams or arguments) else [])
          return main_method(arguments, streams)
      return main
docs: Open a stream for the first file in arguments, or stdin