def METHOD_NAME():
  parser = create_argument_parser(COMMANDS)
  args = parser.parse_args()
  # Set up print functions for messages to the user.
  if args.verbose:
    verbose_printer = lambda x: print(x, file=sys.stdout)
  else:
    verbose_printer = print_nothing
  stderr_printer = lambda x: print(x, file=sys.stderr)
  # TODO: Avoid this duplication of the COMMANDS strings.
  if args.command == 'install':
    install_all_podfile_dirs(args.directory, args.fast_pod_install, BLACKLIST_DIRS)
  elif args.command == 'update':
    update_all_podfile_dirs(args.directory, BLACKLIST_DIRS)
  elif args.command == 'list':
    list_all_podfile_dirs(args.directory, BLACKLIST_DIRS)
  elif args.command == 'clean':
    clean_all_pods_dirs(args.directory, BLACKLIST_DIRS)
  else:
    print('Internal mismatch in the list of possible commands, aborting.',
          file=sys.stderr)
    sys.exit(-1)