code: def parse_args(self, *args, **kwargs):
          
          if _debug: ConfigArgumentParser._debug("parse_args")
  
          # pass along to the parent class
          result_args = ArgumentParser.parse_args(self, *args, **kwargs)
  
          # read in the configuration file
          config = _ConfigParser()
          config.read(result_args.ini)
          if _debug: _log.debug("    - config: %r", config)
  
          # check for BACpypes section
          if not config.has_section('BACpypes'):
              raise RuntimeError("INI file with BACpypes section required")
  
          # convert the contents to an object
          ini_obj = type('ini', (object,), dict(config.items('BACpypes')))
          if _debug: _log.debug("    - ini_obj: %r", ini_obj)
  
          # add the object to the parsed arguments
          setattr(result_args, 'ini', ini_obj)
  
          # return what was parsed
          return result_args
docs: Parse the arguments as usual, then add default processing.