code: def _recurse_config_to_dict(t_data):
      '''
      helper function to recurse through a vim object and attempt to return all child objects
      '''
      if not isinstance(t_data, type(None)):
          if isinstance(t_data, list):
              t_list = []
              for i in t_data:
                  t_list.append(_recurse_config_to_dict(i))
              return t_list
          elif isinstance(t_data, dict):
              t_dict = {}
              for k, v in six.iteritems(t_data):
                  t_dict[k] = _recurse_config_to_dict(v)
              return t_dict
          else:
              if hasattr(t_data, '__dict__'):
                  return _recurse_config_to_dict(t_data.__dict__)
              else:
                  return _serializer(t_dataf _recurse_config_to_dict(t_data):
      '''
      helper function to recurse through a vim object and attempt to return all child objects
      '''
      if not isinstance(t_data, type(None)):
          if isinstance(t_data, list):
              t_list = []
              for i in t_data:
                  t_list.append(_recurse_config_to_dict(i))
              return t_list
          elif isinstance(t_data, dict):
              t_dict = {}
              for k, v in six.iteritems(t_data):
                  t_dict[k] = _recurse_config_to_dict(v)
              return t_dict
          else:
              if hasattr(t_data, '__dict__'):
                  return _recurse_config_to_dict(t_data.__dict__)
              else:
                  return _serializer(t_data)
docs: helper function to recurse through a vim object and attempt to return all child objects