code: def collect_add_argparse(parser, modules):
      
      def work_in(parent_config, config_name, prefix, module):
          f = getattr(module, 'add_arguments', None)
          if f is not None:
              f(parser)
      _recurse_config(dict(), modules, work_in)
      return parser
docs: Add all command-line options.
  
      `modules` is an iterable of
      :class:`yakonfig.configurable.Configurable` objects, or anything
      equivalently typed.  This calls
      :meth:`~yakonfig.configurable.Configurable.add_arguments` (if
      present) on all of them to set the global command-line arguments.
  
      :param argparse.ArgumentParser parser: argparse parser
      :param modules: modules or Configurable instances to use
      :type modules: iterable of :class:`~yakonfig.configurable.Configurable`