code: def args_builder(prefix, current_target, args_dict, value_found_fn):
      
      current_config = current_target.config
      for key, separator in args_dict.items():
          option = "{}.{}".format(prefix, key)
          value = current_config.get_list(option)
          if value:
              if separator is None:
                  separator = _NullJoiner(current_config.name, option)
              value_found_fn(separator.join(value), key)
docs: Process arguments a tool cares about.
  
      Since most tools require configuration, this function helps deal with the
      boilerplate.  Each option will be processed based on all modifications
      supported by dev-pipeline (i.e., profiles and overrides) in the proper
      order.
  
      Arguments:
      prefix -- The prefix for each argument.  This will be applied to
                everything in args_dict.
      current_target -- Information about the current target being processed.
      args_dict -- Something that acts like a dictionary.  The keys should be
                   options to deal with and the value should be the separtor
                   value the option requires.  The separator can be any type
                   that has a join method, or None if lists are supported for
                   that key.
      value_found_fn -- A function to call when a match is found.