code: def parse_func_string(comment):
      if comment is None or len(comment) == 0:
          return {}
      comments = {}
      paras = ("Args", "Attributes", "Returns", "Raises")
      comment_parts = [
          "short_description",
          "long_description",
          "Args",
          "Attributes",
          "Returns",
          "Raises",
      ]
      for x in comment_parts:
          comments[x] = None
  
      parts = re.split(r"\n", comment)
      ind = 1
      while ind < len(parts):
          if re.match(r"^\s*$", parts[ind]):
              break
          else:
              ind += 1
  
      comments["short_description"] = "\n".join(
          [
              "\n".join(re.split("\n\s+", x.strip()))
              for x in parts[0:ind]
          ]
      ).strip(":\n\t ")
      ind = skip_space_line(parts, ind)
  
      start = ind
      while ind < len(parts):
          if parts[ind].strip().startswith(paras):
              break
          else:
              ind += 1
      long_description = "\n".join(
          [
              "\n".join(re.split("\n\s+", x.strip()))
              for x in parts[start:ind]
          ]
      ).strip(":\n\t ")
      comments["long_description"] = long_description
  
      ind = skip_space_line(paras, ind)
      while ind < len(parts):
          if parts[ind].strip().startswith(paras):
              start = ind
              start_with = parts[ind].strip()
              ind += 1
              while ind < len(parts):
                  if parts[ind].strip().startswith(paras):
                      break
                  else:
                      ind += 1
              part = delete_space(parts, start + 1, ind - 1)
              if start_with.startswith(paras[0]):
                  comments[paras[0]] = change_args_to_dict(part)
              elif start_with.startswith(paras[1]):
                  comments[paras[1]] = change_args_to_dict(part)
              elif start_with.startswith(paras[2]):
                  comments[paras[2]] = change_args_to_dict(part)
              elif start_with.startswith(paras[3]):
                  comments[paras[3]] = part
              ind = skip_space_line(parts, ind)
          else:
              ind += 1
  
      remove_next_line(comments)
      return comments
  
file_path: headliner/mkdocs/autogen.py
imports: import ast
  import os
  import re
label_desc: Use image node_id 5 for calling a global function with example usage: parse_func_string(comment) and returns: comments, dict